小编pan*_*nia的帖子

MVVM - 如何将视图模型绑定到视图

并提前感谢您的指导。我是 MVVM 的新手,我一直在通过文章学习。我想我已经走得很远了,但有一件事情似乎让我逃过一劫。我如何(不在后面的代码中使用代码)自动绑定到我想要的视图?据我了解,如果正确完成,这就是模式应该如何工作。我可以使用主窗口 xaml 中的代码实现这一切,我什至正确创建了一个资源字典(因为我可以在直接窗口中访问它)。我只是无法进入“自动化”的下一步。 ' 这可能是我的设计,因为我不熟悉这种模式,所以我完全可以接受我做错了这一切的可能性。这是我所拥有的...

我有一个主窗口。这是一个有 3 行的网格。顶行是菜单。底行是状态栏。中间是一个堆栈面板,根据菜单选择动态加载内容。

我有 2 个视图用于填充此堆栈面板。一个只有一个样式文本框(帮助和关于)。另一个本身就是一个复合视图:一个搜索面板、一个结果网格和一个详细信息面板,所有这些都加载到停靠管理器框架中。

在后面的主窗口代码中,当用户单击菜单选项时,我清除堆栈面板的子项,实例化视图模型,实例化将视图模型传入其中的视图,然后将新视图添加到堆栈的子项中. 这很好用,但我认为它与模式不一致。

正如我提到的,我有资源字典,但我不知道如何将它与堆栈面板相关联。我假设我必须使用绑定,但我无法弄清楚如何绑定到资源字典和/或如何告诉它更改命令视图。

我读过一些文章,这些文章将所有可用的视图模型添加到视图模型中的只读列表中,该列表基本上充当主寡妇和所需的实际视图模型之间的通道。这看起来不错,但我不明白为什么需要资源字典。此外,这些示例是向导实现,在这种情况下,这似乎是一种好方法,但我无法想象为具有 100 个视图模型的应用程序执行此操作。

再次为我的无知感到抱歉,但我希望有人能指出我正确的方向。正如我所说,我已经阅读了大量文章(Josh Smith、Dave Hill 等),但我仍然没有建立联系,所以我希望得到一些具体的指导。(我确实在途中有 WPF Unleashed,但我希望在那之前取得一些进展。)

任何人都可以帮忙吗?

wpf binding view mvvm viewmodel

2
推荐指数
1
解决办法
5412
查看次数

标签 统计

binding ×1

mvvm ×1

view ×1

viewmodel ×1

wpf ×1