<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Map frame in pagelayout in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/map-frame-in-pagelayout/m-p/725075#M19336</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I also need to get at this information for a project I'm working on.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is my first stab at it as a C# Add-In, just to get the basic concept working. It will likely need some refinement, but this should help anyone else in the same boat get started:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
// Get the position and size of the focus map in&amp;nbsp; the layout.

IActiveView activeView = ArcMap.Document.ActiveView;

// Make sure ArcMap is in layout view
if (!(activeView is IPageLayout))
{
&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show("Please switch to layout view.");
&amp;nbsp;&amp;nbsp;&amp;nbsp; return;
}

// Look at the page layout as a container and loop through all the elements.
IGraphicsContainer graphicsContainer = activeView as IGraphicsContainer;
graphicsContainer.Reset();
IElement element = null;
while ((element = graphicsContainer.Next()) != null)
{
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Only work with map frames
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (element is IMapFrame)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get the map frame's map
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IMap map = (element as IMapFrame).Map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Only work with the focus map frame in layout
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (map.Equals(ArcMap.Document.FocusMap))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Display the map frame's layout position/size
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // which is in reference to lower left corner.
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IGeometry geometry = element.Geometry;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Left: " + geometry.Envelope.XMin.ToString() +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "\nTop: " + geometry.Envelope.YMax.ToString() +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "\nRight: " + geometry.Envelope.XMax.ToString() +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "\nBottom: " + geometry.Envelope.YMin.ToString());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
}
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Jeff H&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Dec 2021 07:00:09 GMT</pubDate>
    <dc:creator>JeffreyHamblin</dc:creator>
    <dc:date>2021-12-12T07:00:09Z</dc:date>
    <item>
      <title>Map frame in pagelayout</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/map-frame-in-pagelayout/m-p/725073#M19334</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am doing some custom drawing in the pagelayout view. In that connection, I need to find out the coordinates (or extents) of the map frame that in rendered in the pagelayout view in screen coordinates. Is there a way to find that out?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 22 Apr 2011 23:49:11 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/map-frame-in-pagelayout/m-p/725073#M19334</guid>
      <dc:creator>GagagDa_Morvi</dc:creator>
      <dc:date>2011-04-22T23:49:11Z</dc:date>
    </item>
    <item>
      <title>Re: Map frame in pagelayout</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/map-frame-in-pagelayout/m-p/725074#M19335</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Loop through elements of pagelayout, if element is MapFrameClass, cast it to IElement, use Geometry property to obtain screen coordinates&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 23 Apr 2011 08:42:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/map-frame-in-pagelayout/m-p/725074#M19335</guid>
      <dc:creator>AlexanderDorofeev</dc:creator>
      <dc:date>2011-04-23T08:42:18Z</dc:date>
    </item>
    <item>
      <title>Re: Map frame in pagelayout</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/map-frame-in-pagelayout/m-p/725075#M19336</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I also need to get at this information for a project I'm working on.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is my first stab at it as a C# Add-In, just to get the basic concept working. It will likely need some refinement, but this should help anyone else in the same boat get started:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
// Get the position and size of the focus map in&amp;nbsp; the layout.

IActiveView activeView = ArcMap.Document.ActiveView;

// Make sure ArcMap is in layout view
if (!(activeView is IPageLayout))
{
&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show("Please switch to layout view.");
&amp;nbsp;&amp;nbsp;&amp;nbsp; return;
}

// Look at the page layout as a container and loop through all the elements.
IGraphicsContainer graphicsContainer = activeView as IGraphicsContainer;
graphicsContainer.Reset();
IElement element = null;
while ((element = graphicsContainer.Next()) != null)
{
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Only work with map frames
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (element is IMapFrame)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get the map frame's map
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IMap map = (element as IMapFrame).Map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Only work with the focus map frame in layout
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (map.Equals(ArcMap.Document.FocusMap))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Display the map frame's layout position/size
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // which is in reference to lower left corner.
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IGeometry geometry = element.Geometry;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Left: " + geometry.Envelope.XMin.ToString() +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "\nTop: " + geometry.Envelope.YMax.ToString() +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "\nRight: " + geometry.Envelope.XMax.ToString() +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "\nBottom: " + geometry.Envelope.YMin.ToString());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
}
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Jeff H&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 07:00:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/map-frame-in-pagelayout/m-p/725075#M19336</guid>
      <dc:creator>JeffreyHamblin</dc:creator>
      <dc:date>2021-12-12T07:00:09Z</dc:date>
    </item>
  </channel>
</rss>

