【发布时间】:2017-07-30 19:15:17
【问题描述】:
我已经尝试了很长时间的很多选择,这是我想到的最后一个,所以我会尝试问: 我正在尝试在 WPF 中开发一个 MVVM 项目,并且我已经下载了一个现成的 WPF 控件 (GMap.NET)。但是,这个控件不准备在 MVVM 中使用它,而且我是一个新手,所以我不想自己修改源代码。该控件需要设置很多参数(不能通过XAML访问,所以我不能简单地绑定它们),并在控件对象上调用一些函数。所以这是我的问题:
如何从代码中的任何位置访问 WPF 控件实例并从那里进行管理?
特别是,我想从 ViewModel 部分访问 View 元素,我知道它会破坏模式,但我不知道如何避免它,而且我的时间不多了。
【问题讨论】:
-
@PeterDuniho,我的问题有问题吗?
-
该控件有很多依赖属性..因此它可以在使用 MVVM 的 XAML 中使用。你到底想归档什么是不可能的?
-
@JanDotNet,这是我更具体的问题:stackoverflow.com/questions/45152773/… 我已经问过这个问题,希望得到更通用的解决方案。
-
我想从 ViewModel 部分访问一个 View 元素,它不是 mvvm,所以如果你想这样做,就把你的袜子脱掉。做任何你需要做的事情,但是你需要做。真的,模式为我们服务,我们不为模式服务。如果您想保持这种模式,下面的答案是针对这种情况存在的唯一答案。没有必要就这个主题提出第三个问题:/
-
@Will,在另一个问题中的 GMap.NET 的特定情况下,该问题已经解决。一般情况的答案是另一回事。谢谢。
标签: c# wpf mvvm user-controls wpf-controls