创建图层从lyrx文件 Create layer from a lyrx file var lyrDocFromLyrxFile = new LayerDocument(@"d:\data\cities.lyrx"); var cimLyrDoc = lyrDocFromLyrxFile.GetCIMLayerDocument(); //modifying its renderer symbol to red var r = ((CIMFeatureLayer)cimLyrDoc.LayerDefinitions[0]).Renderer as CIMSimpleRenderer; r.Symbol.Symbol.SetColor(new CIMRGBColor() { R = 255 }); //optionally save the updates out as a file lyrDocFromLyrxFile.Save(@"c:\data\cities_red.lyrx"); //get a json representation of the layer document and you want store away... var aJSONString = lyrDocFromLyrxFile.AsJson(); //... and load it back when needed lyrDocFromLyrxFile.Load(aJSONString); cimLyrDoc = lyrDocFromLyrxFile.GetCIMLayerDocument(); //create a layer and add it to a map var lcp = new LayerCreationParams(cimLyrDoc); var lyr = LayerFactory.Instance.CreateLayer<FeatureLayer>(lcp, map, LayerPosition.AutoArrange); 根据样式文件符号化图层 Apply Symbology to a layer from a Layer file //Note: Run within QueuedTask.Run //Get the Layer Document from the lyrx file var lyrDocFromLyrxFile = new LayerDocument(layerFile); var cimLyrDoc = lyrDocFromLyrxFile.GetCIMLayerDocument(); //Get the renderer from the layer file var rendererFromLayerFile = ((CIMFeatureLayer)cimLyrDoc.LayerDefinitions[0]).Renderer as CIMUniqueValueRenderer; //Apply the renderer to the feature layer //Note: If working with a raster layer, use the SetColorizer method. featureLayer?.SetRenderer(rendererFromLayerFile);