WPF-组合框选择已更改,显示的是最后选择的项目,而不是当前的项目

时间:2018-10-20 09:49:56

标签: c# wpf xaml combobox selectionchanged

这是我的组合框(xaml代码):

0

这是我的C#代码:

 <ComboBox SelectionChanged="ComboBox1_SelectionChanged" Name="ComboBox1" SelectedIndex="1" FontWeight="Bold" FontSize="15" Canvas.Left="133" Canvas.Top="240" Width="135" Height="24">
        <ComboBoxItem Foreground="Red" Name="Red">Red</ComboBoxItem>
        <ComboBoxItem Foreground="Blue" Name="Blue">Blue</ComboBoxItem>
        <ComboBoxItem Foreground="Yellow" Name="Yellow">Yellow</ComboBoxItem>
        <ComboBoxItem Foreground="Pink" Name="Pink">Pink</ComboBoxItem>
        <ComboBoxItem Foreground="Green" Name="Green">Green</ComboBoxItem>
    </ComboBox>

我有一个矩形,想要填充组合框中选择的颜色,我还希望组合框上的默认颜色为蓝色,但是这两种颜色对我都不起作用。默认情况下,组合框上的文本实际上是蓝色,但我认为该项目本身未被选中,因为它无法识别,并告诉我默认情况下组合框字符串为空。此外,矩形的颜色会延迟变化,如果我先选择红色,则什么也不会发生,然后如果选择绿色,则显示红色,并且会一直延迟。

有人知道为什么吗?以及如何解决?我将非常感谢。

1 个答案:

答案 0 :(得分:0)

最后,我设法通过使用DropDownClosed事件更改SelectionChanged事件来解决此问题。