在编辑到文本后,防止WPF ComboBox中的SelectedItem变为null

时间:2015-12-07 09:53:21

标签: c# wpf data-binding combobox selecteditem

我在编辑文本时需要ComboBox以保留SelectedItem,此时我会在SelectedItem转动null后立即修改文字。< / p>

        <ComboBox x:Name="FilterGroups"
                  IsEditable="True"
                  DisplayMemberPath="Code"
                  Text="{Binding FilterGroupCode}"
                  ItemsSource="{Binding FilterGroups}"
                  SelectedItem="{Binding SelectedFilterGroup}"
                  Margin="10,0"/>

我的目标是检测项目是否已被修改,目前我不知道自SelectedItem成为null以来编辑了哪个项目。

此时null SelectedItem对我来说意味着&#34;新&#34; 项。

1 个答案:

答案 0 :(得分:0)

作为AGH的评论。

的Xaml

    <ComboBox x:Name="myFilterGroups" 
              ItemsSource="{Binding FilterGroups}" 
              DisplayMemberPath="Name" 
              SelectedItem="{Binding SelectedFilterGroup}" 
              IsEditable="True" Height="20"
              LostFocus="myFilterGroups_LostFocus"
              >
    </ComboBox>

背后的代码

    private void myFilterGroups_LostFocus(object sender, RoutedEventArgs e)
    {
        var selItem = myFilterGroups.SelectedItem;

        if (selItem == null)
            // Create New Item
            ;
    }