//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D coord2D = new Coordinate2D(2.0, 10.0); //Reference a point symbol in a style StyleProjectItem stylePrjItm = Project.Current.GetItems<StyleProjectItem>() .FirstOrDefault(item => item.Name == "ArcGIS 2D"); SymbolStyleItem symStyleItm = stylePrjItm.SearchSymbols( StyleItemType.PointSymbol, "City Hall")[0]; CIMPointSymbol pointSym = symStyleItm.Symbol as CIMPointSymbol; pointSym.SetSize(50); var elemInfo = new ElementInfo() { CustomProperties = new List<CIMStringMap>() { new CIMStringMap() { Key = "Key1", Value = "Value1"}, new CIMStringMap() { Key = "Key2", Value = "Value2"} }, Anchor = Anchor.TopRightCorner, Rotation = 45.0 }; var graphic = GraphicFactory.Instance.CreateSimpleGraphic( coord2D.ToMapPoint(), pointSym); ElementFactory.Instance.CreateGraphicElement( container, graphic, "New Point", true, elemInfo);
//Create a table frame. //Construct on the worker thread await QueuedTask.Run(() => { //Build 2D envelope geometry Coordinate2D rec_ll = new Coordinate2D(1.0, 3.5); Coordinate2D rec_ur = new Coordinate2D(7.5, 4.5); //At 2.x - Envelope rec_env = EnvelopeBuilder.CreateEnvelope(rec_ll, rec_ur); Envelope rec_env = EnvelopeBuilderEx.CreateEnvelope(rec_ll, rec_ur); //Reference map frame and layer MapFrame mf = layout.FindElement("Map Frame") as MapFrame; FeatureLayer lyr = mf.Map.FindLayers("GreatLakes").First() as FeatureLayer; //Build fields list var fields = new[] { "NAME", "Shape_Area", "Shape_Length" }; //Construct the table frame //At 2.x - TableFrame tabFrame = LayoutElementFactory.Instance.CreateTableFrame( // layout, rec_env, mf, lyr, fields); var tableFrameInfo = new TableFrameInfo() { FieldNames = fields, MapFrameName = mf.Name, MapMemberUri = lyr.URI }; var tabFrame = ElementFactory.Instance.CreateMapSurroundElement( layout, rec_env, tableFrameInfo) as TableFrame; });
Target Platforms: Windows 11, Windows 10