c# - Wpf DataBinding 到朋友属性
问题描述
我目前正在编写一个将由我的客户使用的类库。此外,我正在编写一个小型 wpf-gui 用于测试目的。这个 gui 需要比客户看到更多的信息。因此,我将一些属性声明为受保护的朋友(VB)/受保护的内部(C#),并将我的库的 InternalsVisibleTo-Attribute 设置为我的 gui。
虽然从后面的代码访问朋友属性效果很好,但对这些属性的 wpf 数据绑定失败了。
这个问题有什么解决办法吗?
解决方案
数据绑定仅适用于public
属性。
在你的情况下,你可以使用这样public
的属性protected internal set
:
public string MyProperty { get; protected internal set; }
这确保了任何人都可以读取属性,但不能从类/子类和程序集的外部修改。
其他替代方法是公开单独的公共、仅获取属性,该属性从受保护的内部属性中获取值,如下所示:
public string MyProperty => MyProtectedInternalProperty;
推荐阅读
- ruby-on-rails - Ruby on Rails 固定装置不加载关系
- fluid-framework - 如何使用 inMemory 运行 Tinylicious:false?
- javascript - Jquery多图像预览删除不起作用
- windows-10 - Windows 10:使用提供的 powershell 脚本注册 filebeat 服务时出现问题
- docker - 无法从容器访问主机上使用 CNAME(别名)的网站
- javascript - 错误推送 javascript 无法正常工作?
- javascript - ASP webforms:如何使用下拉在文本框中异步显示相关数据?
- flutter - 如何使用同步融合颤振控制面板运行颤振样本
- java - TextView 高度随 android 中的不同文本自动变化
- python - PyGame:MOUSEBUTTONDOWN 事件的问题