WPF 在ViewModels中 获取ComboBoxItem tag值
在WPF中,ComboBoxItem的tag值可以使用Binding绑定到ViewModels中的一个属性。以下是一个示例:
XAML代码:
<ComboBox ItemsSource="{Binding Items}" SelectedItem="{Binding SelectedItem}">
<ComboBox.ItemContainerStyle>
<Style TargetType="ComboBoxItem">
<Setter Property="Tag" Value="{Binding Tag}" />
</Style>
</ComboBox.ItemContainerStyle>
</ComboBox>
ViewModels中的属性:
private ObservableCollection<MyItem> _items;
public ObservableCollection<MyItem> Items
{
get { return _items; }
set { _items = value; OnPropertyChanged(); }
}
private MyItem _selectedItem;
public MyItem SelectedItem
{
get { return _selectedItem; }
set { _selectedItem = value; OnPropertyChanged(); }
}
public class MyItem
{
public string Name { get; set; }
public int Value { get; set; }
public object Tag { get; set; }
}
在上面的代码中,ComboBox的ItemsSource绑定到ViewModels中的一个ObservableCollection。每个ComboBoxItem的Tag属性绑定到对应的MyItem对象的Tag属性。在ViewModels中,可以通过SelectedItem属性获取当前选择的MyItem对象,然后通过Tag属性获取对应的tag值。
原文地址: https://www.cveoy.top/t/topic/bhXV 著作权归作者所有。请勿转载和采集!