我目前的工作如何使用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