小编Rik*_*ere的帖子

WPF 使用 SelectedIndex 从 ViewModel 中选择 ListBox 中的项目

我是 MVVM/WPF 的新手,经过几个小时的研究,没有为我的项目找到任何真正有用/有效的答案,我决定试一试并尝试在这里提问。

我想从我的列表框中选择一个项目,它使用一个列表作为一个项目源。

相关视图模型:

public class FavoriteStructureVm : INotifyPropertyChanged
{
    #region
    public event PropertyChangedEventHandler PropertyChanged;
    private void OnPropertyChanged(string propertyName)
    {
        if (this.PropertyChanged != null)
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    }
    #endregion

    public ObservableCollection<FavoriteDataVm> Favorites { get; set; }
    public int SelectedIndex { get; set; }
    private FavoriteDataVm _selectedItem;
    public FavoriteDataVm SelectedItem
    {
        set
        {
            _selectedItem = value;
            var item = (FavoriteDataVm)_selectedItem;
            if (item.Type == FavoriteDataType.Add)
            {
                SelectedIndex = 1;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

ListBox 默认包含几个项目,最后一个始终是 type 之一Add,如果选择它,可能会添加一个新项目并默认选择它,或者如果没有添加新项目,则选择先前选择的项目。对于简单性,无论是否添加新项目,所选项目都将为 …

c# wpf xaml listbox mvvm

2
推荐指数
1
解决办法
3601
查看次数

标签 统计

c# ×1

listbox ×1

mvvm ×1

wpf ×1

xaml ×1