У меня очень простое приложение, где я хочу заполнить список, когда кто -то нажимает кнопку. Я использую CollectionViewSource для обновления ListView при нажатии кнопки, но я не могу заполнить элементы ListView. Пожалуйста, помогите.
Get All Door Items
Modiy Door Open Close
< /code>
В коде я устанавливаю дата -контекст следующим образом, < /p>
public MainWindow()
{
InitializeComponent();
MainWindowViewModel mvn = new MainWindowViewModel();
this.DataContext = mvn;
}
< /code>
MainWindowViewModel заключается в следующем: < /p>
public class MainWindowViewModel
{
private ICollectionView _doorView;
public ICollectionView DoorCollection
{
get { return _doorView; }
set
{
_doorView = value;
}
}
public ICommand GetAllDoorItemsCommand { get; set; }
public MainWindowViewModel()
{
GetAllDoorItemsCommand = new RelayCommand(GetAllItems);
}
private void GetAllItems(object obj)
{
var Items = new List();
Items.Add(new Door() { Name = "Front", Open = true });
Items.Add(new Door() { Name = "Back", Open = false });
DoorCollection = CollectionViewSource.GetDefaultView(Items);
DoorCollection.Refresh();
}
}
public class Door : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private string _name;
public string Name
{
get => _name;
set
{
_name = value;
OnPropertyChanged("Name");
}
}
private bool _open;
public bool Open
{
get => _open;
set
{
_open = value;
OnPropertyChanged("Open");
}
}
protected virtual void OnPropertyChanged(string propertyName)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));
}
}
Подробнее здесь: https://stackoverflow.com/questions/795 ... pdating-ui
WPF CollectionViewSource не обновляет пользовательский интерфейс ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение