我目前的工作如何使用XAML以及它如何與C#交互。我目前面臨的挑戰是試圖獲取文本塊來更改顯示覆選框時顯示的文本。這需要程序取得一個Bool輸入(是否勾選了方框?)並給出一個字符串輸出。當綁定我怎麼數據類型之間的轉換?
目前,當它運行的佈局是正確的讓我懷疑XAML代碼是好的但是複選框是否被選中與否的文本塊將只顯示「取消選中」狀態。
我懷疑,問題是這兩種方法之間,但我無法找到一個解決方案,有什麼建議?
有問題的代碼:C#
public class MainPageViewModel : ViewModelBase
{
//stores value of checkbox
private bool _BoxCheckBool;
//Updates value of _BoxCheckBool
public bool BoxCheckBool
{
set
{
Set(ref _BoxCheckBool, value);
}
}
//stores value (for textblock)
private string _BoxCheckString;
public string BoxCheckString
{
//logic that determines what will be sent to the textblock
get
{
if (_BoxCheckBool == true)
{
_BoxCheckString = "The Box has been checked";
}
else if (_BoxCheckBool == false)
{
_BoxCheckString = "The Box has not been checked";
}
else
{
_BoxCheckString = "ERROR";
}
return _BoxCheckString;
}
set
{
Set(ref _BoxCheckString, value);
}
}
}
有問題的代碼:XAML
<CheckBox x:Name="BoxTest" HorizontalAlignment="Center" Content="Check Box" IsChecked="{Binding BoxCheckBool, Mode=TwoWay}"/>
<TextBlock x:Name="BoxTestOutput" Grid.Row="1" Text="{Binding BoxCheckString, Mode=TwoWay}"/>
謝謝大家對你的建議,它一直是非常有幫助的。 :) – TheSkeletonDetective