概述: 我已經將按鈕的IsEnabled
屬性綁定到其相關視圖模型中的布爾標誌。如何根據多個屬性選擇設置布爾標誌?
在當前的UI設置的IsValidTagRequest
應設置爲真有,如果所有三個屬性選擇,即RaisePropertyChanged()
每個二傳手已經解僱。
我曾嘗試私人布爾_isValidTagRequest所需的每一個屬性的RaisePropertyChanged()
後設置爲true - RegNumber
,SelectedZone
,SelectedParkDuration
。
但是,這種情況並沒有考慮到所有三個屬性都選擇了啓用按鈕的值。
問題: 有誰知道我可以檢查多個屬性已被更改之前啓用一個布爾屬性爲true?
private string _regNumber;
public string RegNumber
{
get
{
return this._regNumber;
}
set
{
if (_regNumber != value)
{
_regNumber = value;
RaisePropertyChanged("RegNumber");
}
}
}
private ZoneInfo _selectedZone;
public ZoneInfo SelectedZone
{
get
{
return this._selectedZone;
}
set
{
if (_selectedZone != value)
{
_selectedZone = value;
RaisePropertyChanged("SelectedZone");
}
}
}
private TimeSpan? _selectedParkDuration = TimeSpan.Parse("00:00");
public TimeSpan? SelectedParkDuration
{
get
{
return this._selectedParkDuration;
}
set
{
if (_selectedParkDuration != value)
{
_selectedParkDuration = value;
RaisePropertyChanged("SelectedParkDuration");
}
}
}
: -
RegNumber
,
SelectedZone
,
SelectedParkDuration
private bool isValidTagRequest = false;
public bool IsValidTagRequest
{
get { return isValidTagRequest; }
set
{
if (value != isValidTagRequest)
{
isValidTagRequest = value;
RaisePropertyChanged("IsValidTagRequest");
}
}
}
三個屬性:
的布爾媒體資源相關聯的定義如下,隨後每個所要求的特性的前的IsEnabled被設置爲真被改變
對於上下文,XAML中的綁定定義如下:
<Button Grid.Row="3"
Grid.Column="1"
Width="200"
Height="100"
HorizontalAlignment="Center"
VerticalAlignment="Bottom"
Command="{Binding TagRequestCommand}"
Content="Send"
IsEnabled="{Binding IsValidTagRequest,
Mode=TwoWay}"
Style="{StaticResource CustomButtonStyle}" />