• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

通过MVVM动态UI模式

wpf 来源:Liran 5次浏览

我正在构建基于MVVM的WPF应用程序,我面临一些问题: 我需要根据来自模型的信息构建UI,例如 我的模型包含进程列表(从XML文件加载 – 动态),每个进程包含信息(名称,图标路径等)。 foreach过程我需要建立一个单一的按钮(显示相对应的进程信息),为了做到这一点,我需要检索从viewModel到UI的进程列表(为了执行实际的UI构建),这将强制UI引用进程容器…并且将打破MVVM。通过MVVM动态UI模式

有人有任何想法如何实现这个没有打破MVVM?

很多谢谢。


===========解决方案如下:

使用绑定到ViewModel集合的ItemsControl。在ItemsControl内定义一个DataTemplate,它基本上是一个基于每个进程构建您的Button的包装。

<ItemsControl.ItemTemplate> 
    <DataTemplate> 
     <Button Content="{Binding ProcessName}"/> 
    </DataTemplate> 
    </ItemsControl.ItemTemplate> 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)