private void bindList() { if (ClassBreakConfigItems != null) { if (ClassBreaksRenderer != null) { // Add the default symbol config control DefaultSymbolConfigControl defaultSymbolConfigControl = new DefaultSymbolConfigControl() { Symbol = ClassBreaksRenderer.DefaultSymbol, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; defaultSymbolConfigControl.DefaultSymbolModified += new EventHandler <SymbolSelectedEventArgs>(defaultSymbolConfigControl_DefaultSymbolModified); ClassBreakConfigItems.Items.Add(defaultSymbolConfigControl); ClassBreakConfigItems.SelectedItem = defaultSymbolConfigControl; foreach (ClassBreakInfo classBreak in ClassBreaksRenderer.Classes) { ClassBreakConfigControl classBreakConfigControl = createNewClassBreakConfigControl(classBreak); ClassBreakConfigItems.Items.Add(classBreakConfigControl); } } } }
private void bindList() { if (UniqueValueConfigItems != null) { if (UniqueValueRenderer != null) { // Add the default symbol config control DefaultSymbolConfigControl defaultSymbolConfigControl = new DefaultSymbolConfigControl() { Symbol = UniqueValueRenderer.DefaultSymbol, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; defaultSymbolConfigControl.DefaultSymbolModified += new EventHandler <SymbolSelectedEventArgs>(defaultSymbolConfigControl_DefaultSymbolModified); UniqueValueConfigItems.Items.Add(defaultSymbolConfigControl); UniqueValueConfigItems.SelectedItem = defaultSymbolConfigControl; foreach (UniqueValueInfo uniqueValueInfo in UniqueValueRenderer.Infos) { UniqueValueConfigControl uniqueValueConfigControl = createNewUniqueValueConfigControl(uniqueValueInfo); UniqueValueConfigItems.Items.Add(uniqueValueConfigControl); } } } }
void UniqueValueConfigItems_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (UniqueValueConfigItems == null) { return; } UniqueValueConfigControl configControl = UniqueValueConfigItems.SelectedItem as UniqueValueConfigControl; if (configControl != null) { OnCurrentUniqueValueChanged(new CurrentUniqueValueChangedEventArgs() { UniqueValue = configControl.UniqueValue, }); return; } else { DefaultSymbolConfigControl defaultConfigControl = UniqueValueConfigItems.SelectedItem as DefaultSymbolConfigControl; if (defaultConfigControl != null) { OnDefaultClassBreakBeingConfigured(new DefaultClassBreakBeingConfiguredEventArgs() { DefaultSymbol = defaultConfigControl.Symbol, }); return; } } }
private void updateSymbolConfigControlIfCurrentSelectedSymbol() { if (SymbolConfigControl == null || RendererSymbolSetContainerControl == null) { return; } ClassBreaksRendererSymbolsConfigControl symbolsConfigControl = RendererSymbolSetContainerControl.Content as ClassBreaksRendererSymbolsConfigControl; if (symbolsConfigControl != null) { Control selectedControl = symbolsConfigControl.GetCurrentSelectedConfigControl(); ClassBreakConfigControl classBreaksConfigControl = selectedControl as ClassBreakConfigControl; if (classBreaksConfigControl != null) { if (classBreaksConfigControl.ClassBreak != null) { SymbolConfigControl.Symbol = classBreaksConfigControl.ClassBreak.Symbol; } } else { DefaultSymbolConfigControl defaultConfigControl = selectedControl as DefaultSymbolConfigControl; if (defaultConfigControl != null) { SymbolConfigControl.Symbol = defaultConfigControl.Symbol; } } } else { UniqueValueRendererSymbolsConfigControl uniqueValueRendererConfigControl = RendererSymbolSetContainerControl.Content as UniqueValueRendererSymbolsConfigControl; if (uniqueValueRendererConfigControl != null) { Control selectedControl = uniqueValueRendererConfigControl.GetCurrentSelectedConfigControl(); UniqueValueConfigControl uniqueValueConfigControl = selectedControl as UniqueValueConfigControl; if (uniqueValueConfigControl != null) { if (uniqueValueConfigControl.UniqueValue != null) { SymbolConfigControl.Symbol = uniqueValueConfigControl.UniqueValue.Symbol; } } else { DefaultSymbolConfigControl defaultConfigControl = selectedControl as DefaultSymbolConfigControl; if (defaultConfigControl != null) { SymbolConfigControl.Symbol = defaultConfigControl.Symbol; } } } } }
void ClassBreakConfigItems_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (ClassBreakConfigItems == null) { return; } ClassBreakConfigControl configControl = ClassBreakConfigItems.SelectedItem as ClassBreakConfigControl; if (configControl != null) { OnCurrentClassBreakChanged(new CurrentClassBreakChangedEventArgs() { ClassBreak = configControl.ClassBreak, }); return; } else { DefaultSymbolConfigControl defaultConfigControl = ClassBreakConfigItems.SelectedItem as DefaultSymbolConfigControl; if (defaultConfigControl != null) { OnDefaultClassBreakBeingConfigured(new DefaultClassBreakBeingConfiguredEventArgs() { DefaultSymbol = defaultConfigControl.Symbol, }); return; } } if (ClassBreakConfigItems.Items != null) { foreach (Control control in ClassBreakConfigItems.Items) { ClassBreakConfigControl classBreakConfigItemControl = control as ClassBreakConfigControl; if (classBreakConfigItemControl != null) { classBreakConfigItemControl.StopEditMode(); } } } }
private void bindUIToLayer() { GraphicsLayer graphicsLayer = Layer as GraphicsLayer; if (graphicsLayer == null) return; #region Renderer Takes Precedence bindingToLayer = true; if (GraphicSymbolsTakePrecedence != null) GraphicSymbolsTakePrecedence.IsChecked = !graphicsLayer.RendererTakesPrecedence; bindingToLayer = false; #endregion GeometryType = ESRI.ArcGIS.Mapping.Core.LayerExtensions.GetGeometryType(graphicsLayer); ClassBreaksRenderer classBreaksRenderer = graphicsLayer.Renderer as ClassBreaksRenderer; if (classBreaksRenderer != null) { if (RendererOptionsContainerControl != null) { ClassBreaksRendererOptionsConfigControl optionsConfigControl = new ClassBreaksRendererOptionsConfigControl() { ClassBreaksRenderer = classBreaksRenderer, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; optionsConfigControl.SetBinding(ClassBreaksRendererOptionsConfigControl.ForegroundProperty, b); optionsConfigControl.RendererColorSchemeChanged += new EventHandler<GradientBrushChangedEventArgs>(optionsConfigControl_RendererColorSchemeChanged); optionsConfigControl.RendererClassBreaksChanged += new EventHandler<RendererClassBreaksCountChangedEventArgs>(optionsConfigControl_RendererClassBreaksChanged); RendererOptionsContainerControl.Content = optionsConfigControl; } if (RendererOptionsContainerBorder != null) RendererOptionsContainerBorder.Visibility = Visibility.Visible; if (CurrentSymbolLabel != null) CurrentSymbolLabel.Visibility = Visibility.Visible; createClassBreaksRendererSymbolsConfigControl(classBreaksRenderer); } else { UniqueValueRenderer uniqueValueRenderer = graphicsLayer.Renderer as UniqueValueRenderer; if (uniqueValueRenderer != null) { if (RendererOptionsContainerControl != null) { UniqueValueRendererOptionsConfigControl optionsConfigControl = new UniqueValueRendererOptionsConfigControl() { UniqueValueRenderer = uniqueValueRenderer, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; optionsConfigControl.SetBinding(UniqueValueRendererOptionsConfigControl.ForegroundProperty, b); optionsConfigControl.RendererColorSchemeChanged += new EventHandler<GradientBrushChangedEventArgs>(optionsConfigControl_RendererColorSchemeChanged); optionsConfigControl.NewUniqueValueAdded += new EventHandler<NewUniqueValueInfoEventArgs>(optionsConfigControl_NewUniqueValueCreated); optionsConfigControl.DeleteUniqueValueClicked += new EventHandler(optionsConfigControl_DeleteUniqueValueClicked); RendererOptionsContainerControl.Content = optionsConfigControl; } if (RendererSymbolSetContainerControl != null) { UniqueValueRendererSymbolsConfigControl symbolsConfigControl = new UniqueValueRendererSymbolsConfigControl() { UniqueValueRenderer = uniqueValueRenderer, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; symbolsConfigControl.SetBinding(UniqueValueRendererSymbolsConfigControl.ForegroundProperty, b); symbolsConfigControl.UniqueValueRendererModified += new EventHandler<SelectedUniqueValueModificationEventArgs>(symbolsConfigControl_UniqueValueRendererModified); symbolsConfigControl.CurrentUniqueValueChanged += new EventHandler<CurrentUniqueValueChangedEventArgs>(symbolsConfigControl_CurrentUniqueValueChanged); symbolsConfigControl.DefaultClassBreakBeingConfigured += new EventHandler<DefaultClassBreakBeingConfiguredEventArgs>(symbolsConfigControl_DefaultClassBreakBeingConfigured); RendererSymbolSetContainerControl.Content = symbolsConfigControl; } if (RendererOptionsContainerBorder != null) RendererOptionsContainerBorder.Visibility = Visibility.Visible; if (CurrentSymbolLabel != null) CurrentSymbolLabel.Visibility = Visibility.Visible; } else { // No renderer / simple renderer ... clear out the control if (RendererOptionsContainerControl != null) RendererOptionsContainerControl.Content = null; if (RendererSymbolSetContainerControl != null) { ESRI.ArcGIS.Client.Symbols.Symbol defaultSymbol = graphicsLayer.GetDefaultSymbol(); DefaultSymbolConfigControl defaultSymbolConfig = new DefaultSymbolConfigControl() { Symbol = defaultSymbol, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; defaultSymbolConfig.SetBinding(DefaultSymbolConfigControl.ForegroundProperty, b); defaultSymbolConfig.DefaultSymbolModified += new EventHandler<SymbolSelectedEventArgs>(defaultSymbolConfig_DefaultSymbolModified); RendererSymbolSetContainerControl.Content = defaultSymbolConfig; if (SymbolConfigControl != null) SymbolConfigControl.Symbol = defaultSymbol; } if (CurrentSymbolLabel != null) CurrentSymbolLabel.Visibility = Visibility.Collapsed; if (RendererOptionsContainerBorder != null) RendererOptionsContainerBorder.Visibility = Visibility.Collapsed; } } }
void ClassBreakConfigItems_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (ClassBreakConfigItems == null) { return; } // Enable disable previous/next buttons appropriately if (PreviousRangeButton != null) { PreviousRangeButton.IsEnabled = ClassBreakConfigItems.SelectedIndex > 0; } if (NextRangeButton != null) { // remember .. the first item in the list is the default symbol if (ClassBreaksRenderer != null) { NextRangeButton.IsEnabled = ClassBreakConfigItems.SelectedIndex < ClassBreaksRenderer.Classes.Count; } } ClassBreakConfigControl classBreakConfigControl = ClassBreakConfigItems.SelectedItem as ClassBreakConfigControl; if (classBreakConfigControl != null) { if (DeleteRangeButton != null) { DeleteRangeButton.IsEnabled = true; } if (classBreakConfigControl.ClassBreak == null) { return; } if (SymbolConfigControl != null && classBreakConfigControl.ClassBreak != null) { SymbolConfigControl.Symbol = classBreakConfigControl.ClassBreak.Symbol; } if (MinTextBox != null) { MinTextBox.IsEnabled = true; MinTextBox.TextChanged -= MinTextBox_TextChanged; MinTextBox.Text = classBreakConfigControl.ClassBreak.MinimumValue.ToString(); MinTextBox.TextChanged += MinTextBox_TextChanged; } if (MaxTextBox != null) { MaxTextBox.IsEnabled = true; MaxTextBox.TextChanged -= MaxTextBox_TextChanged; MaxTextBox.Text = classBreakConfigControl.ClassBreak.MaximumValue.ToString(); MaxTextBox.TextChanged += MaxTextBox_TextChanged; } } else { DefaultSymbolConfigControl defaultSymbolConfigControl = ClassBreakConfigItems.SelectedItem as DefaultSymbolConfigControl; if (defaultSymbolConfigControl != null) { if (SymbolConfigControl != null) { SymbolConfigControl.Symbol = defaultSymbolConfigControl.Symbol; } if (DeleteRangeButton != null) { DeleteRangeButton.IsEnabled = false; } if (MinTextBox != null) { MinTextBox.IsEnabled = false; MinTextBox.TextChanged -= MinTextBox_TextChanged; MinTextBox.Text = ""; MinTextBox.TextChanged += MinTextBox_TextChanged; } if (MaxTextBox != null) { MaxTextBox.IsEnabled = false; MaxTextBox.TextChanged -= MaxTextBox_TextChanged; MaxTextBox.Text = ""; MaxTextBox.TextChanged += MaxTextBox_TextChanged; } } } }
void UniqueValueConfigItems_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (UniqueValueConfigItems == null) { return; } if (PreviousUniqueValueButton != null) { PreviousUniqueValueButton.IsEnabled = UniqueValueConfigItems.SelectedIndex > 0; } if (NextUniqueValueButton != null) { // remember .. the first item in the list is the default symbol if (UniqueValueRenderer != null) { NextUniqueValueButton.IsEnabled = UniqueValueConfigItems.SelectedIndex < UniqueValueRenderer.Infos.Count; } } UniqueValueConfigControl uniqueValueConfigControl = UniqueValueConfigItems.SelectedItem as UniqueValueConfigControl; if (uniqueValueConfigControl != null) { if (uniqueValueConfigControl.UniqueValue == null) { return; } if (DeleteUniqueValueButton != null) { DeleteUniqueValueButton.IsEnabled = true; } if (SymbolConfigControl != null && uniqueValueConfigControl.UniqueValue != null) { SymbolConfigControl.Symbol = uniqueValueConfigControl.UniqueValue.Symbol; } if (ValueTextBox != null) { ValueTextBox.IsEnabled = true; if (uniqueValueConfigControl.UniqueValue.Value != null) { ValueTextBox.TextChanged -= ValueTextBox_TextChanged; ValueTextBox.Text = uniqueValueConfigControl.UniqueValue.Value.ToString(); ValueTextBox.TextChanged += ValueTextBox_TextChanged; } } } else { DefaultSymbolConfigControl defaultSymbolConfigControl = UniqueValueConfigItems.SelectedItem as DefaultSymbolConfigControl; if (defaultSymbolConfigControl != null) { if (SymbolConfigControl != null) { SymbolConfigControl.Symbol = defaultSymbolConfigControl.Symbol; } if (DeleteUniqueValueButton != null) { DeleteUniqueValueButton.IsEnabled = false; } if (ValueTextBox != null) { ValueTextBox.IsEnabled = false; ValueTextBox.TextChanged -= ValueTextBox_TextChanged; ValueTextBox.Text = ""; ValueTextBox.TextChanged += ValueTextBox_TextChanged; } } } }
private void bindList() { if (ClassBreakConfigItems != null) { if (ClassBreaksRenderer != null) { // Add the default symbol config control DefaultSymbolConfigControl defaultSymbolConfigControl = new DefaultSymbolConfigControl() { Symbol = ClassBreaksRenderer.DefaultSymbol, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; defaultSymbolConfigControl.DefaultSymbolModified += new EventHandler<SymbolSelectedEventArgs>(defaultSymbolConfigControl_DefaultSymbolModified); ClassBreakConfigItems.Items.Add(defaultSymbolConfigControl); ClassBreakConfigItems.SelectedItem = defaultSymbolConfigControl; foreach (ClassBreakInfo classBreak in ClassBreaksRenderer.Classes) { ClassBreakConfigControl classBreakConfigControl = createNewClassBreakConfigControl(classBreak); ClassBreakConfigItems.Items.Add(classBreakConfigControl); } } } }
private void bindList() { if (UniqueValueConfigItems != null) { if (UniqueValueRenderer != null) { // Add the default symbol config control DefaultSymbolConfigControl defaultSymbolConfigControl = new DefaultSymbolConfigControl() { Symbol = UniqueValueRenderer.DefaultSymbol, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; defaultSymbolConfigControl.DefaultSymbolModified += new EventHandler<SymbolSelectedEventArgs>(defaultSymbolConfigControl_DefaultSymbolModified); UniqueValueConfigItems.Items.Add(defaultSymbolConfigControl); UniqueValueConfigItems.SelectedItem = defaultSymbolConfigControl; foreach (UniqueValueInfo uniqueValueInfo in UniqueValueRenderer.Infos) { UniqueValueConfigControl uniqueValueConfigControl = createNewUniqueValueConfigControl(uniqueValueInfo); UniqueValueConfigItems.Items.Add(uniqueValueConfigControl); } } } }
private void bindUIToLayer() { GraphicsLayer graphicsLayer = Layer as GraphicsLayer; if (graphicsLayer == null) { return; } #region Renderer Takes Precedence bindingToLayer = true; if (GraphicSymbolsTakePrecedence != null) { GraphicSymbolsTakePrecedence.IsChecked = !graphicsLayer.RendererTakesPrecedence; } bindingToLayer = false; #endregion GeometryType = ESRI.ArcGIS.Mapping.Core.LayerExtensions.GetGeometryType(graphicsLayer); ClassBreaksRenderer classBreaksRenderer = graphicsLayer.Renderer as ClassBreaksRenderer; if (classBreaksRenderer != null) { if (RendererOptionsContainerControl != null) { ClassBreaksRendererOptionsConfigControl optionsConfigControl = new ClassBreaksRendererOptionsConfigControl() { ClassBreaksRenderer = classBreaksRenderer, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; optionsConfigControl.SetBinding(ClassBreaksRendererOptionsConfigControl.ForegroundProperty, b); optionsConfigControl.RendererColorSchemeChanged += new EventHandler <GradientBrushChangedEventArgs>(optionsConfigControl_RendererColorSchemeChanged); optionsConfigControl.RendererClassBreaksChanged += new EventHandler <RendererClassBreaksCountChangedEventArgs>(optionsConfigControl_RendererClassBreaksChanged); RendererOptionsContainerControl.Content = optionsConfigControl; } if (RendererOptionsContainerBorder != null) { RendererOptionsContainerBorder.Visibility = Visibility.Visible; } if (CurrentSymbolLabel != null) { CurrentSymbolLabel.Visibility = Visibility.Visible; } createClassBreaksRendererSymbolsConfigControl(classBreaksRenderer); } else { UniqueValueRenderer uniqueValueRenderer = graphicsLayer.Renderer as UniqueValueRenderer; if (uniqueValueRenderer != null) { if (RendererOptionsContainerControl != null) { UniqueValueRendererOptionsConfigControl optionsConfigControl = new UniqueValueRendererOptionsConfigControl() { UniqueValueRenderer = uniqueValueRenderer, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; optionsConfigControl.SetBinding(UniqueValueRendererOptionsConfigControl.ForegroundProperty, b); optionsConfigControl.RendererColorSchemeChanged += new EventHandler <GradientBrushChangedEventArgs>(optionsConfigControl_RendererColorSchemeChanged); optionsConfigControl.NewUniqueValueAdded += new EventHandler <NewUniqueValueInfoEventArgs>(optionsConfigControl_NewUniqueValueCreated); optionsConfigControl.DeleteUniqueValueClicked += new EventHandler(optionsConfigControl_DeleteUniqueValueClicked); RendererOptionsContainerControl.Content = optionsConfigControl; } if (RendererSymbolSetContainerControl != null) { UniqueValueRendererSymbolsConfigControl symbolsConfigControl = new UniqueValueRendererSymbolsConfigControl() { UniqueValueRenderer = uniqueValueRenderer, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; symbolsConfigControl.SetBinding(UniqueValueRendererSymbolsConfigControl.ForegroundProperty, b); symbolsConfigControl.UniqueValueRendererModified += new EventHandler <SelectedUniqueValueModificationEventArgs>(symbolsConfigControl_UniqueValueRendererModified); symbolsConfigControl.CurrentUniqueValueChanged += new EventHandler <CurrentUniqueValueChangedEventArgs>(symbolsConfigControl_CurrentUniqueValueChanged); symbolsConfigControl.DefaultClassBreakBeingConfigured += new EventHandler <DefaultClassBreakBeingConfiguredEventArgs>(symbolsConfigControl_DefaultClassBreakBeingConfigured); RendererSymbolSetContainerControl.Content = symbolsConfigControl; } if (RendererOptionsContainerBorder != null) { RendererOptionsContainerBorder.Visibility = Visibility.Visible; } if (CurrentSymbolLabel != null) { CurrentSymbolLabel.Visibility = Visibility.Visible; } } else { // No renderer / simple renderer ... clear out the control if (RendererOptionsContainerControl != null) { RendererOptionsContainerControl.Content = null; } if (RendererSymbolSetContainerControl != null) { ESRI.ArcGIS.Client.Symbols.Symbol defaultSymbol = graphicsLayer.GetDefaultSymbol(); DefaultSymbolConfigControl defaultSymbolConfig = new DefaultSymbolConfigControl() { Symbol = defaultSymbol, SymbolConfigProvider = SymbolConfigProvider, GeometryType = GeometryType, }; Binding b = new Binding("Foreground") { Source = this }; defaultSymbolConfig.SetBinding(DefaultSymbolConfigControl.ForegroundProperty, b); defaultSymbolConfig.DefaultSymbolModified += new EventHandler <SymbolSelectedEventArgs>(defaultSymbolConfig_DefaultSymbolModified); RendererSymbolSetContainerControl.Content = defaultSymbolConfig; if (SymbolConfigControl != null) { SymbolConfigControl.Symbol = defaultSymbol; } } if (CurrentSymbolLabel != null) { CurrentSymbolLabel.Visibility = Visibility.Collapsed; } if (RendererOptionsContainerBorder != null) { RendererOptionsContainerBorder.Visibility = Visibility.Collapsed; } } } }