public void SelectElements( IReadOnlyList<Element> elements )
Public Overloads Sub SelectElements( _ ByVal elements As IReadOnlyList(Of Element) _ )
Parameters
- elements
- A list of existing layout elements.
public void SelectElements( IReadOnlyList<Element> elements )
Public Overloads Sub SelectElements( _ ByVal elements As IReadOnlyList(Of Element) _ )
Exception | Description |
---|---|
ArcGIS.Core.CalledOnWrongThreadException | This method or property must be called within the lambda passed to QueuedTask.Run. |
System.ArgumentException | elements must belong to layout 'URI' |
//Set the layout's element selection. await QueuedTask.Run(() => { Element rec = layoutView.Layout.FindElement("Rectangle"); Element rec2 = layoutView.Layout.FindElement("Rectangle 2"); List<Element> elmList = new List<Element>(); elmList.Add(rec); elmList.Add(rec2); layoutView.SelectElements(elmList); });
//This example references the active layout view. Next it finds a couple of elements and adds them to a collection. //The elements in the collection are selected within the layout view. Finally, the layout view is zoomed to the //extent of the selection. // Make sure the active pane is a layout view and then reference it if (LayoutView.Active != null) { LayoutView lytView = LayoutView.Active; //Reference the layout associated with the layout view Layout lyt = await QueuedTask.Run(() => lytView.Layout); //Find a couple of layout elements and add them to a collection Element map1 = lyt.FindElement("Map1 Map Frame"); Element map2 = lyt.FindElement("Map2 Map Frame"); List<Element> elmList = new List<Element>(); elmList.Add(map1); elmList.Add(map2); //Set the selection on the layout view and zoom to the selected elements await QueuedTask.Run(() => lytView.SelectElements(elmList)); await QueuedTask.Run(() => lytView.ZoomToSelectedElements()); }
// Make sure the active pane is a layout view and then reference it if (LayoutView.Active != null) { LayoutView lytView = LayoutView.Active; //Reference the layout associated with the layout view Layout lyt = await QueuedTask.Run(() => lytView.Layout); //Find a couple of layout elements and add them to a collection Element map1 = lyt.FindElement("Map1 Map Frame"); Element map2 = lyt.FindElement("Map2 Map Frame"); List<Element> elmList = new List<Element>(); elmList.Add(map1); elmList.Add(map2); //Set the selection on the layout view and zoom to the selected elements await QueuedTask.Run(() => lytView.SelectElements(elmList)); await QueuedTask.Run(() => lytView.ZoomToSelectedElements()); return true; } return false;
//Set the active layout view's selection to include 2 rectangle elements. //Reference the active view LayoutView activeLayoutView = LayoutView.Active; if (activeLayoutView != null) { //Perform on the worker thread QueuedTask.Run(() => { //Reference the layout Layout lyt = activeLayoutView.Layout; //Reference the two rectangle elements Element rec = lyt.FindElement("Rectangle"); Element rec2 = lyt.FindElement("Rectangle 2"); //Construct a list and add the elements List<Element> elmList = new List<Element> { rec, rec2 }; //Set the selection activeLayoutView.SelectElements(elmList); }); }
Target Platforms: Windows 11, Windows 10