当前位置: 首页 > 编程语言 > C#

使用ViewModel根据ViewModel属性改变视图分享

时间:2023-04-10 16:10:57 C#

使用ViewModel根据ViewModel属性改变视图据我所知,在WPF中可以这样做:我的问题:有没有办法选择一个View基于ViewModel中的属性?像这样://IfpropertySelector==1//IfpropertySelector==2数据模板选择器会这样做吗?这是适用于您的场景的教程:首先创建一个DataTemplateSelector:publicclassIronStageTemplateSelector:DataTemplateSelector{publicDataTemplateIronStage1Template{get;放;}publicDataTemplateIronStage2Template{get;放;}公共对象IronStage1Selector{得到;放;}公共对象IronStage2Selector{得到;放;}publicoverrideDataTemplateSelectTemplate(objectselector,DependencyObjectcontainer){if(selector==this.IronStage1Selector){returnIronStage1Template;}返回IronStage2Template;返回每个模板时可以分配的属性。声明XAML资源12在这个例子中,我们声明了我们的选择器,以便当我们的属性值为1时,我们返回template1,否则我们得到template2。最后将控件添加到XAML需要一些技巧-您的VM属性需要是IEnumerable...我希望这会有所帮助,如果您觉得它有用,请将其标记为答案是否有一个视图模型属性,其类型是在编译时已知?如果是这样,您可以将控件直接添加到主(父)视图并将数据上下文绑定到视图模型属性。像这样的东西..如果你有不同的情况,请告诉我。以上就是C#学习教程:使用ViewModel根据ViewModel属性更改视图共享的所有内容。如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: