为什么没有 get、set 的数据绑定在 WPf 中不起作用?

问题描述 投票:0回答:2

我是 C# 和 WPF 的初学者,我在学习时遇到了一个问题。 使用 get 和 set 的数据绑定工作良好,如下所示。

 public partial class Some: Window
    {
        public string Name { get; set; } = "NAME3";

        public Some()
        {
            InitializeComponent();
            this.DataContext = this;
        }

但是,没有 get、set 的数据绑定根本不起作用。

 public partial class Some: Window
    {
        public string Name = "NAME3";

        public Some()
        {
            InitializeComponent();
            this.DataContext = this;
        }

他们有什么区别? 谢谢

c# wpf data-binding
2个回答
0
投票

没有 get 的数据绑定,set 在 C# 中不起作用,因为 get 和 set 访问器是数据绑定过程工作所必需的。

getset 访问器允许应用程序自动检索和设置属性的值,这是数据绑定过程正常工作所必需的。

如果没有 getset 访问器,应用程序将无法访问或设置属性的值,这将阻止数据绑定过程的工作。


0
投票

检查 SO 上的答案 - 各种 WPF 绑定模式是什么?.

列出了不同的绑定模式。

当你不想去

set
可能
one-way
是解决方案。所以只会发生从模型到视图的绑定。但这应该只适用于视图中的常量或只读元素。

© www.soinside.com 2019 - 2024. All rights reserved.