Windows phone 7 为什么数据绑定源需要显式getter?
如果我不向字符串属性添加显式访问器,那么数据绑定就不起作用。为什么呢? 下面是一个简单的示例,其中文本框连接到字符串属性 MainPage.xaml:Windows phone 7 为什么数据绑定源需要显式getter?,windows-phone-7,data-binding,Windows Phone 7,Data Binding,如果我不向字符串属性添加显式访问器,那么数据绑定就不起作用。为什么呢? 下面是一个简单的示例,其中文本框连接到字符串属性 MainPage.xaml: <Grid Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> <TextBlock Text="{Binding Message} /> </Grid> 此操作无效,文本框为空 但是,添加属性访问器 public String Message {
<Grid Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<TextBlock Text="{Binding Message} />
</Grid>
此操作无效,文本框为空
但是,添加属性访问器
public String Message { get; set; };
现在它开始工作了
我看不出有什么解释。有人能解释一下吗?属性没有隐式set/get访问器吗?即便如此,为什么数据绑定不能访问属性呢
谢谢,编译器之所以生成这些隐式访问器,是因为
{get;set;}
。如果不考虑这一点,则根本不是创建属性,而是创建一个简单字段
我不太喜欢XAML,所以我不能肯定,但可能它不支持绑定到普通字段。编译器生成这些隐式访问器的原因是
{get;set;}
。如果不考虑这一点,则根本不是创建属性,而是创建一个简单字段
我不太喜欢XAML,所以我不能肯定,但也许它不支持绑定到普通字段。公共字符串消息代码>是一个字段,而不是属性。
数据绑定仅适用于属性。公共字符串消息代码>是一个字段,而不是属性。
public String Message;
数据绑定仅适用于属性
public String Message;
这是一个字段,不是属性。添加getter和setter将创建自动属性。
只能将属性绑定到
这是一个字段,不是属性。添加getter和setter将创建自动属性。
只有属性可以绑定。@Slaks、@devdigital和@Matti_Virkkunen:你们都有相同的答案,但结果都不完全正确。。你们都为我澄清了田地和地产之间的区别——我没有意识到这一点。这让我找到了正确的答案:绑定仅在涉及路径时才与属性一起工作,否则它可以直接访问字段。例如:上面是
DataContext=Message代码>那么
就行了!因此,使用路径需要访问器@Slaks、@devdigital和@Matti_Virkkunen:你们都有相同的答案,但结果都不完全正确。。你们都为我澄清了田地和地产之间的区别——我没有意识到这一点。这让我找到了正确的答案:绑定仅在涉及路径时才与属性一起工作,否则它可以直接访问字段。例如:上面是DataContext=Message代码>那么
就行了!因此,使用路径需要访问器。