Вопрос

Я вполне начал на WPF. У меня есть Checkbox, и я хочу, чтобы все изменения проверки будут предоставлять команду, которая получает ischecked параметр и выполнять некоторые действия.

У меня есть следующий код в моем файле XAML:

На моем просмотру у меня есть следующий код:

    private ICommand _addSelectedItemsCommand;
    public ICommand AddSelectedItemsCommand
    {
        get
        {
            if (_addSelectedItemsCommand == null)
            {
                _addSelectedItemsCommand = new RelayCommand(param => this.AddSelectedItems());
            }
            return _addSelectedItemsCommand;
        }
    }


    private void AddSelectedItems()
    {
        Do something...
    }
.

Но для «делай что-то» мне нужен поиск параметра, как я могу получить это?

Спасибо

Это было полезно?

Решение

Вы должны использовать InvoCeCommandcationaction класс.Вы можете найти его в выражении SDK SDK или вы можете просто добавить Это пакет Nuget к вашему проекту,

<CheckBox
  xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions"
  xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity">
  <i:Interaction.Triggers>
    <i:EventTrigger EventName="Checked">
      <ei:InvokeCommandAction Command="{Binding AddSelectedItemsCommand}" CommandParameter="..." />
    </i:EventTrigger>
  </i:Interaction.Triggers>
</CheckBox>
.

Другие советы

В вашем ViewModel RelayCommand выглядят как

private RelayCommand<string> AddSelectedItemsCommand{get;set;}
.

и в вашем коде конструктора ViewModel выглядят как

AddSelectedItemsCommand=new RelayCommand<string>(AddSelectedItemsMethod);


void AddSelectedItemsMethod(string AddItem)
{
 Your Code Goes Here.
  }
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top