Parameters
- cimPage
- CIMPage
Return Value
Returns Layout or a null.
Exception | Description |
---|---|
ArcGIS.Core.CalledOnWrongThreadException | This method must be called within the lambda passed to QueuedTask.Run. |
//This example creates a new layout using a CIM page definion with rulers and guides included. //Added references using ArcGIS.Desktop.Layouts; using ArcGIS.Desktop.Framework.Threading.Tasks; using ArcGIS.Desktop.Core; using ArcGIS.Core.CIM; public class CreateLayoutEx2 { async public static Task<Layout> CreateCIMLayout(double width, double height, LinearUnit units, string LayoutName) { Layout CIMlayout = null; await QueuedTask.Run(() => { //Set up a page CIMPage newPage = new CIMPage(); //required newPage.Width = width; newPage.Height = height; newPage.Units = units; //optional rulers newPage.ShowRulers = true; newPage.SmallestRulerDivision = 5; //optional guides newPage.ShowGuides = true; CIMGuide guide1 = new CIMGuide(); guide1.Position = 25; guide1.Orientation = Orientation.Vertical; CIMGuide guide2 = new CIMGuide(); guide2.Position = 185; guide2.Orientation = Orientation.Vertical; CIMGuide guide3 = new CIMGuide(); guide3.Position = 25; guide3.Orientation = Orientation.Horizontal; CIMGuide guide4 = new CIMGuide(); guide4.Position = 272; guide4.Orientation = Orientation.Horizontal; List<CIMGuide> guideList = new List<CIMGuide>(); guideList.Add(guide1); guideList.Add(guide2); guideList.Add(guide3); guideList.Add(guide4); newPage.Guides = guideList.ToArray(); Layout layout = LayoutFactory.Instance.CreateLayout(newPage); layout.SetName(LayoutName); }); //Open the layout in a pane await ProApp.Panes.CreateLayoutPaneAsync(CIMlayout); return CIMlayout; } }
Target Platforms: Windows 10, Windows 8.1