c# - XAML 绑定(bind)到属性

标签 c# xaml data-binding microsoft-metro windows-runtime

我的 XAML+C# Windows 应用商店应用程序中有复选框。我还有 bool 属性:WindowsStoreTestApp.SessionData.RememberUser,它是公共(public)的和静态的。

我希望复选框的属性 IsChecked 与此 bool 属性一致(或绑定(bind)或映射)。

我试过这个: 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; }
    }
}

但是好像不行。你能帮帮我吗?

最佳答案

<CheckBox x:Name="chbRemember1"  IsChecked="{Binding Path=RememberUser, Mode=TwoWay}"/>

public class SessionData : INotifyPropertyChanged
{
    public event PropertyChangedEventHandler PropertyChanged;
    private void NotifyPropertyChanged(string info)
    {
        if (PropertyChanged != null)
            PropertyChanged(this, new PropertyChangedEventArgs(info));
    }


    bool _rememberUser;
    public bool RememberUser
    {
        get
        {
            return _rememberUser;
        }
        set
        {
            _rememberUser = value;
            NotifyPropertyChanged("RememberUser");
        }
    }
}

关于c# - XAML 绑定(bind)到属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13733945/

相关文章:

c# - 如何使用带有构造函数注入(inject)的 Unity 在 wpf 中使用 subview & 及其 viewmodel2 更新 viewmodel1 的父 View 中的状态

c# - 将复选框列表绑定(bind)到数据模型中的字典

C# 重载泛型约束

c# - System.Net.ProtocolViolationException :Bytes to be written to the stream exceed the Content-Length bytes size specified

c# - 如何使 DockPanel 中的项目扩展以适应 WPF 中的所有可用空间?

xaml - 如何向 Windows Phone 8.1 map 控件添加图钉?

c# - XAML 和 C# 代码背后的 UI 区别

javascript - 如何在 JavaScript 中实现 DOM 数据绑定(bind)

WPF ListView 数据绑定(bind)拖/放自动滚动

c# - 如何从 C# 运行 Python 脚本?