wpf 中combox如何实现binding 2个不同值进行选择然后处理事件

动态 未结 0 141
小小草
小小草 LV1 2023年9月23日 23:40 发表
在WPF中,可以使用Binding来将ComboBox绑定到两个不同的值,并处理选择事件。以下是一个简单的示例: XAML代码: ```xml ``` 其中,Names和SelectedName是ViewModel中的属性,分别表示下拉列表中的选项和当前选中的选项。DisplayMemberPath和SelectedValuePath分别指定显示名称和实际值的属性。 在代码中,我们还为ComboBox的SelectionChanged事件添加了一个处理程序,以便在用户选择新选项时执行一些操作。 C#代码: ```csharp public class ViewModel : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; private List _names; public List Names { get { return _names; } set { _names = value; OnPropertyChanged("Names"); } } private Name _selectedName; public Name SelectedName { get { return _selectedName; } set { _selectedName = value; OnPropertyChanged("SelectedName"); } } public ViewModel() { Names = new List { new Name { Id = 1, Name = "John" }, new Name { Id = 2, Name = "Mary" }, new Name { Id = 3, Name = "Bob" } }; } protected void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { // 处理选择事件 } } public class Name { public int Id { get; set; } public string Name { get; set; } } ``` 在ViewModel中,我们定义了Names和SelectedName属性,并在构造函数中初始化了下拉列表的选项。我们还实现了INotifyPropertyChanged接口,以便在属性更改时通知UI更新。 最后,在ComboBox_SelectionChanged方法中,我们可以处理用户选择新选项时要执行的操作。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复