c# - WPF-MEF UX 绑定
问题描述
WPF新手在这里。考虑以下情况
- 父用户控件 A
- 父控件有一个占位符/插槽,这些 MEF 扩展用户控件可以动态加载。
- 所有提供用户控件的 MEF 扩展都实现了特定的接口。这包括一个布尔值,他们可以设置它以指示操作已完成。
- 父 A 有一个按钮,当特定属性(上面提到的)设置为 true 时需要启用该按钮。
这可能吗?如果是,如何?
binding + INotifyPropertyChanged 是要走的路吗?
我们还考虑过传入可用于更新父级状态的操作。
还有其他选择吗?
解决方案
所以让我解释一下;
- 如果动态加载的用户控件没有数据上下文(未设置视图模型),则用户控件使用父视图模型。
- 但是如果你为每个用户控件定义了一个视图模型,你可以导入这些视图模型并在父视图模型中管理它们。
- 还可以考虑使用 BaseViewModel(MEF 的 BindableBase)
推荐阅读
- webgl - alpha 如何在禁用混合的 webGL 中工作?
- node.js - “toHaveBeenNthCalledWith”不应该只测试一个模拟函数的实例
- c# - 从 ChartValues 中删除元素后计算的值不正确
- git - git & hugo - 创建 git 子模块到 github 的问题
- javascript - 根据高度计算圆上的位置(X,Y)
- bash - 将脚本运行到远程计算机时出现问题
- tensorflow - PyTorch BatchNorm1D、2D、3D 和 TensorFlow/Keras BatchNormalization
- java - 使用改造上传文件期间的进度条
- python - 连续计算字符串中的重复字符Python
- windows-subsystem-for-linux - 如何在 wsl2 上为不同的分布设置不同的 ip?