我有一个 WPF 项目,其中有 4 个TextBlock
. 我想要的是改变Text
每个TextBlock
via Binding
。
到目前为止,我有我的 XAML:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock x:Name="First" Text="{Binding FirstString}" Grid.Row="0"/>
<TextBlock x:Name="Second" Text="{Binding SecondString}" Grid.Row="1"/>
<TextBlock x:Name="Third" Text="{Binding ThirdString}" Grid.Row="2"/>
<TextBlock x:Name="Fourth" Text="{Binding FourthString}" Grid.Row="3"/>
</Grid>
在我的代码中,我有:
public partial class MainWindow : Window
{
public string FirstString { get; set; }
public string SecondString { get; set; }
public string ThirdString { get; set; }
public string FourthString { get; set; }
public MainWindow()
{
InitializeComponent();
FirstString = "First";
SecondString = "Second";
ThirdString= "Third";
FourthString= "Fourth";
}
}
但这Binding
根本不起作用。难道我做错了什么?
编辑:在评论中遵循 Chris Mantle 的建议查看调试输出(我必须为绑定启用警告)后,我收到以下错误:
System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。绑定表达式:路径=第一个字符串;数据项=空;目标元素是'TextBlock'(名称='First');目标属性是“文本”(类型“字符串”)