SelectionChanged显示旧值

本文关键字:显示 SelectionChanged | 更新日期: 2023-09-27 18:04:55

组合框上的SelectionChanged事件仍然显示旧值。我需要得到它被改变的值。任何想法?。

目前在XAML代码中我使用:

SelectionChanged="TxtProductFamily_SelectionChanged"
c#

private void TxtProductFamily_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
MessageBox.Show(TxtProductFamily.Text);
}

SelectionChanged显示旧值

您想在EventArgs中使用AddedItems

private void TxtProductFamily_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    foreach (var addedItem in e.AddedItems)
    {
        var item = addedItem as String; // <-- Cast to whatever type here, string, ViewModel, int, etc.
        if (item != null)
        {
            MessageBox.Show(item);
            break;
        }
    }
}

绑定到什么集合类型?如果它是一个Collection of Strings,你需要在Show它之前对它进行强制类型转换。

如果您需要关于已选择/未选择的内容的准确信息,那么Selector.SelectionChanged事件将为您提供SelectionChangedEventArgs作为参数,您可以从中获得2个列表

AddedItems which

获取一个列表,其中包含所选项。

RemovedItems

获取一个列表,其中包含未选中的

ComboBox。文本在组合框之后更新。触发SelectionChange事件

通过ComboBox获取。SelectedItem ' ComboBox.SelectedValue.