/// <summary> /// Täyttää comboboxit valittavilla väreillä /// </summary> private void LueVaritComboBoxeihin() { List <VariComboboxItem> ActiveTaustaVarit = new List <VariComboboxItem>(); List <VariComboboxItem> ActiveReunusVarit = new List <VariComboboxItem>(); List <VariComboboxItem> InactiveTaustaVarit = new List <VariComboboxItem>(); List <VariComboboxItem> InactiveReunusVarit = new List <VariComboboxItem>(); // Käydään läpi kaikki nimetyt värit System.Windows.Media.Colors rakenteesta System.Reflection.PropertyInfo[] colors = (typeof(Colors).GetProperties()); foreach (PropertyInfo property in colors) { VariComboboxItem vari = new VariComboboxItem(new SolidColorBrush((Color)ColorConverter.ConvertFromString(property.Name)), property.Name); // pitää tehdä kopiot, muuten comboboxit ei toimi oikein VariComboboxItem vari2 = new VariComboboxItem(vari.Vari, vari.Teksti); VariComboboxItem vari3 = new VariComboboxItem(vari.Vari, vari.Teksti); VariComboboxItem vari4 = new VariComboboxItem(vari.Vari, vari.Teksti); ActiveTaustaVarit.Add(vari); ActiveReunusVarit.Add(vari2); InactiveTaustaVarit.Add(vari3); InactiveReunusVarit.Add(vari4); } cboxActiveLaattaReunuksenVari.ItemsSource = ActiveReunusVarit; cboxActiveLaattaTaustaVari.ItemsSource = ActiveTaustaVarit; cboxInactiveLaattaReunuksenVari.ItemsSource = InactiveReunusVarit; cboxInactiveLaattaTaustaVari.ItemsSource = InactiveTaustaVarit; }
private static void OnTekstiChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args) { VariComboboxItem item = (VariComboboxItem)obj; item.variLabel.Content = (String)args.NewValue; }
private static void OnVariChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args) { VariComboboxItem item = (VariComboboxItem)obj; item.variRectangle.Fill = (SolidColorBrush)args.NewValue; }