string myLayer = "PoliciesSDE"; ArcGISDynamicMapServiceLayer dynamicServiceLayer = MapApplication.Current.Map.Layers[myLayer] as ArcGISDynamicMapServiceLayer; LayerDefinition lDef = new LayerDefinition(); lDef.LayerID = 0; lDef.Definition = "State = 'OREGON'"; dynamicServiceLayer.LayerDefinitions.Add(lDef); dynamicServiceLayer.Refresh();
string myLayer = "PoliciesSDE"; ArcGISDynamicMapServiceLayer dynamicServiceLayer = MapApplication.Current.Map.Layers[myLayer] as ArcGISDynamicMapServiceLayer; LayerDefinition lDef = new LayerDefinition(); lDef.LayerID = 0; lDef.Definition = "State = 'OREGON'"; // Create an ObservableCollection and add the .Definition to it. System.Collections.ObjectModel.ObservableCollection<LayerDefinition> myObservableCollection2 = new System.Collections.ObjectModel.ObservableCollection<LayerDefinition>(); myObservableCollection2.Add(lDef); MessageBox.Show("Collection made."); dynamicServiceLayer.LayerDefinitions = (myObservableCollection2); MessageBox.Show("Definition Applied."); dynamicServiceLayer.Refresh();
ArcGISDynamicMapServiceLayer dynamicServiceLayer = MapApplication.Current.Map.Layers[7] as ArcGISDynamicMapServiceLayer
string strState = cmbState.SelectionBoxItem.ToString().ToUpper(); string strlDef = "State = '" + strState + "'"; foreach (Layer myLayer in MapApplication.Current.Map.Layers) { strLayerName = MapApplication.GetLayerName(myLayer); if (strLayerName == "PoliciesSDE") { string layerID = myLayer.ID; LayerDefinition lDef = new LayerDefinition(); lDef.LayerID = 0; lDef.Definition = strlDef; // Create an ObservableCollection and add the .Definition to it. System.Collections.ObjectModel.ObservableCollection<LayerDefinition> myObservableCollection2 = new System.Collections.ObjectModel.ObservableCollection<LayerDefinition>(); myObservableCollection2.Add(lDef); ArcGISDynamicMapServiceLayer dynamicServiceLayer = MapApplication.Current.Map.Layers[layerID] as ArcGISDynamicMapServiceLayer; dynamicServiceLayer.LayerDefinitions = (myObservableCollection2); dynamicServiceLayer.Refresh(); } }