在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值。

WPF 在ViewModels中 获取ComboBoxItem tag值

原文地址: https://www.cveoy.top/t/topic/bhXV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录