Member 13105198 Ответов: 0

Как добавить элемент в список, когда я выбираю элемент из списка и нажимаю кнопку Добавить в пользовательском интерфейсе WPF


Всем привет!
Я новичок, так что извините за мой вопрос, если он слишком тусклый или неуместный.
в любом случае, в моем пользовательском интерфейсе (WPF) у меня есть ListView, который я создал, содержащий наблюдаемую коллекцию типа " var Collection = new ObservableCollection< type>", и у меня есть две кнопки "Добавить" и "удалить".:
1-всякий раз , когда я выбираю элемент из моего ListView в пользовательском интерфейсе(просто нажмите на него) и нажмите кнопку "добавить", элемент сохраняется в списке под названием Scenario (var Scenario = new List<type>).
2-всякий раз, когда я нажимаю кнопку "Удалить", список сценариев становится пустым.

Любая помощь будет очень признательна и заранее вам благодарна.

Что я уже пробовал:

Это код в MainWindowModel, в основном моя проблема заключается в том, что
OnSelectChanged()
как добавить тип в список, когда он выбран и нажата кнопка "Добавить"?? и правомерно ли вкладывать эту логику в
OnSelectChanged()


private Type _newType;
     private bool _isSelected;
     public bool IsSelected
     {
         get { return _isSelected; }
         set
         {
             if (_isSelected != value)
             {
                 _isSelected = value;
                 RaisePropertyChanged(nameof(IsSelected));
                 OnCheckChanged();
             }
         }
     }
     private void OnSelectChanged()
     {
         foreach (var type in Collection)
         {
             //if type is selected and "Add" button is pressed then add the type to the List Scenario

         }
     }
           // I used RelayCommand to create the buttons and the execution
public MainWindowModel()
     {
         DeleteCommand = new RelayCommand(o => DeleteExecute());
         AddCommand = new RelayCommand(o => AddExecute());

     }
public ICommand DeleteCommand
     {
         get;
         private set;
     }
     public ICommand AddCommand
     {
         get;
         private set;
     }

     private void DeleteExecute()
     {
         Scenario.Clear();
     }

     private void AddExecute()
     {

        Scenario.Add(NewType);
     }
public Type NewType
     {
         get { return _newType; }
         set { SetPropertyAndFireEvent(ref _newType, value); }
     }

0 Ответов