So ändern combobox bestimmtes Artikel Farbe dynamisch in wpf
<Grid x:Name="LayoutRoot">
<ComboBox x:Name="com_ColorItems" Height="41" Margin="198,114,264,0" VerticalAlignment="Top" FontSize="13.333" FontWeight="Bold" Foreground="#FF3F7E24"/>
</Grid>
Mit obigen code, mit dem ich alle farbigen Elemente in der combobox grün.
private void Window_Loaded(object sender, RoutedEventArgs e)
{
for (int i = 0; i < 5; i++)
{
com_ColorItems.Items.Add(i);
}
}
Mit obigen code, den ich ausgefüllt haben, fünf Elemente in die combobox. Jetzt möchte ich die Farbe ändern von der 3. Punkt (3) "rot" in der code-behind-dynamisch. Wie kann ich das tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Anstatt den tatsächlichen Wert der
i
in der combobox angezeigt, fügen Sie einComboBoxItem
statt:Wenn Sie möchten, ändern Sie die ComboBoxItem mit dieser Methode erstellt werden, später ist dies, wie Sie es tun können:
Versuchen Sie zunächst, binden Sie Ihre Quelle und vermeiden Sie den direkten Zugang durch code hinter.
Und als Sie verwenden können, einen Konverter in Ihrem ItemSource Binding.
z.B.
und in Ihre Software finden Sie das 3. Element und geben Sie einen anderen ForegroundColor