This document is archived and information here might be outdated. Recommended version. |
ArcObjects Help for .NET developers > ArcObjects namespaces > Carto > ESRI.ArcGIS.Carto > Interfaces > IM > IMap Interface > IMap.IsFramed Property (ArcObjects .NET 10.5 SDK) |
Indicates if map is drawn in a frame rather than on the whole window.
[Visual Basic .NET] Public Property IsFramed As Boolean
[C#] public bool IsFramed {get; set;}
[C++]
HRESULT get_IsFramed(
VARIANT_BOOL* flag
);
[C++]
HRESULT put_IsFramed(
VARIANT_BOOL flag
);
[C++]
Parameters flag [out, retval] flag is a parameter of type VARIANT_BOOL flag [in] flag is a parameter of type VARIANT_BOOL
When creating a custom application, if you want the display to take over the window it's drawing in, set IsFramed to FALSE. This will add scrollbars (IScreenDisplay::UseScrollBars=TRUE) as necessary and keeps the device frame in sync with the window extent. Setting IsFramed to TRUE means that the display is drawing on some extent within the window. In this case, it won't show scrollbars and it won't automatically update the device frame.
For example, in the ArcMap application, in layout view where each Map resides inside a separate MapFrame, each Map has it IsFramed property set to TRUE. In data view, the opposite is true, a Map's display fits the entire window; in this view, all Map's have IsFramed set to FALSE, not just the focus map.
The IsFramed property also sets the IsFirstCacheTransparent property. When a Map is drawing in layout view, the PageLayout object has its ScreenDisplay and each Map has its own separate ScreenDisplay. This means that the layout has it's display cache(s) and the maps have their own. If the bottom cache of each map was opaque, you wouldn't be able to see through a map onto layout elements below it. Setting IsFirstCacheTransparent on the maps in layout view lets you see through the maps.
This property is really a shortcut to IScreenDisplay::IsFramed.
If you are working with Map's inside of ArcMap these settings should not be touched. Only use this property when building a low level appliation that uses a display to draw on a frame on a window.
IMap Interface | IScreenDisplay.IsFramed Property