【发布时间】:2012-12-05 22:49:02
【问题描述】:
我的 XAML+C# Windows 应用商店应用程序中有复选框。我还有 bool 属性:WindowsStoreTestApp.SessionData.RememberUser,它是公共的和静态的。
我希望复选框的属性 IsChecked 与此 bool 属性一致(或绑定或映射)。
我试过这个: XAML
<CheckBox x:Name="chbRemember1" IsChecked="{Binding Mode=TwoWay}"/>
C#
chbRemember1.DataContext = SessionData.RememberUser;
属性代码:
namespace WindowsStoreTestApp
{
public class SessionData
{
public static bool RememberUser { get; set; }
}
}
但它似乎不起作用。你能帮帮我吗?
【问题讨论】:
-
你能澄清什么不起作用吗?是双向更新不起作用吗?它根本不起作用吗?另外,你能展示一下 SessionData(尤其是 RememberUser)的代码吗?这将有助于我们诊断问题。
-
当其中一个发生变化时,第二个也应该发生变化。
-
无论我更改哪个,映射都不起作用。我尝试在代码中更改属性,复选框未选中。尝试相反,选中复选框,然后在调试器中查看,属性没有改变
-
我喜欢这样的经典问题。查看此绑定演练blog.jerrynixon.com/2012/10/xaml-binding-basics-101.html 并关注 INotifyPropertyChanged。
-
@Jerry: 谢谢,我只是觉得它是内置的简单功能
标签: c# xaml data-binding microsoft-metro windows-runtime