我想通過按鈕上的兩個ICommand參數點擊視圖模型中的方法。傳遞兩個命令參數上的按鈕點擊WPF NET 3.5 MVVM
現在我只能傳遞一個參數。
代碼在這裏。
XAML(查看):
<Button x:Name="btnAdd" Command="{Binding AddUserCommand}"
CommandParameter="{Binding IDUser}"/>
視圖模型:
public string IDUser
{
get
{
return this.personalData.UserID;
}
set
{
if (this.personalData.UserID == value)
{
return;
}
this.personalData.UserID = value;
OnPropertyChanged("UserID");
}
}
private RelayCommand addUserCommand;
public ICommand AddUserCommand
{
get
{
return addUserCommand ??
(addUserCommand = new RelayCommand(param => this.AddUser(param.ToString())));
}
}
public vol AddUser(string userId)
{
// Do some stuff
}
現在我想通過按鈕點擊另一個ICommand的參數。 我想傳遞的參數是複選框中的值(選中或不選)。
<CheckBox x:Name="Status" Content="Married"/>
所以鑑於模型方法ADDUSER將有以下特徵:
public vol AddUser(string userId, bool status)
{
// Do some stuff
}
我知道它可以使用MultiBinding進行結合轉換器,但我不知道究竟該怎麼做。此外,我不明白爲什麼使用多重綁定時轉換器是必需的。
雖然綁定可能比您想要的更冗長,但它也可能是正確的選擇。如果你確實需要一個轉換器,你需要它的原因是你會從一個方法返回一個(DTO)對象:因爲該方法只能返回一件事情。 –
也許一個很好的[發佈](https://stackoverflow.com/questions/15759308/do-you-have-to-use-a-converter-when-using-multibinding-in-wpf)回答_爲什麼一個轉換器是使用多重綁定時需要._ –
爲什麼複選框未綁定到您的視圖模型?如果是這樣,你可以簡單地看看價值。 – Will