Hallihallo,
ich hab ne Frage:
Ich möchte programmweit meinen Controls immer die gleiche Farbe mitgeben, und den User diese Farbe aus einer Listbox oder Combobox auswählen lassen.
Ist es also möglich, den Inhalt einer List-/Combobox an die Farben anzubinden, die mir z. B. Intellisense vorschlägt. Und dann, wenn sich das ausgewählte Item ändert, die ausgewählte Farbe per DymamicResource den Controls zuzuweisen. Oder muss ich das aufwändig über Code Behind machen?
Hab im Internet zwei komplette WPF Tutorials gefunden, aber zu diesem speziellen Fall finde ich nichts...
EDIT: Hab mich ein bisschen durchgekämpft und hab es jetzt geschafft, dass mir eine Listbox alle verfügbaren Farben als Item anzeigt:
Wie mache ich es jetzt, dass in Zeile 3 als Wert das ausgewählte Item aus der Listbox (das den Farbname als String enthält) verwendet wird. Ich hätte da jetzt lstColors.SelectedItem reingeschrieben aber das funktioniert so natürlich nicht... Vielleicht irgendwie den String in eine Color umwandeln..?
ich hab ne Frage:
Ich möchte programmweit meinen Controls immer die gleiche Farbe mitgeben, und den User diese Farbe aus einer Listbox oder Combobox auswählen lassen.
Ist es also möglich, den Inhalt einer List-/Combobox an die Farben anzubinden, die mir z. B. Intellisense vorschlägt. Und dann, wenn sich das ausgewählte Item ändert, die ausgewählte Farbe per DymamicResource den Controls zuzuweisen. Oder muss ich das aufwändig über Code Behind machen?
Hab im Internet zwei komplette WPF Tutorials gefunden, aber zu diesem speziellen Fall finde ich nichts...
EDIT: Hab mich ein bisschen durchgekämpft und hab es jetzt geschafft, dass mir eine Listbox alle verfügbaren Farben als Item anzeigt:
XML-Quellcode
- <Window.Resources>
- <SolidColorBrush x:Key="Skin">
- </SolidColorBrush>
- </Window.Resources>
- <Grid x:Name="MeinGrid" Background="{DynamicResource Skin}">
- <ListBox Name="lstColors" Height="200" Width="200">
- <ListBox.ItemTemplate>
- <DataTemplate>
- <ListBoxItem Width="130" Content="{Binding ColorName}"/>
- </DataTemplate>
- </ListBox.ItemTemplate>
- </ListBox>
- </Grid>
Wie mache ich es jetzt, dass in Zeile 3 als Wert das ausgewählte Item aus der Listbox (das den Farbname als String enthält) verwendet wird. Ich hätte da jetzt lstColors.SelectedItem reingeschrieben aber das funktioniert so natürlich nicht... Vielleicht irgendwie den String in eine Color umwandeln..?
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „kafffee“ ()