【问题标题】:MVVM Design Pattern for Windows PhoneWindows Phone 的 MVVM 设计模式
【发布时间】:2012-07-10 16:56:42
【问题描述】:

我正在编写一个 Windows Phone 应用程序并计划在其中使用一些 MVVM 想法。
我知道使用命令绑定可以轻松分离 UI 和逻辑,但问题是我不知道如何访问控件属性,例如:
我在主页上有一个地图控件,我想在用户点击的地方显示一个图钉。但是对于 MVVM,我认为无论如何我都做不到。意味着我不能访问地图属性和方法来做这样的事情,对吗?

如果有人对 MVVM 有经验,请分享您对如何使用控件的属性和方法执行任务的想法。

(P.S. 我不想为此应用程序使用 MVVM Light 或任何工具包)

谢谢

【问题讨论】:

  • 您确定只是将模型上的数据绑定到地图吗?地图必须公开一些属性以允许添加引脚 - 我假设它具有数据绑定支持?我会说所有体面的 Silverlight 控件都...

标签: c# silverlight windows-phone-7 mvvm


【解决方案1】:

您正在尝试做的事情 - 将 a 绑定到一个属性,该属性确定在地图上的何处显示图钉 - 是一个非常具体的用例,这就是地图控件不为此公开属性的原因。

如果您想遵循 MVVM 模式,我建议您创建一个用户控件/自定义控件,该控件包装地图控件并公开您可以绑定到的依赖属性。更改此属性时,您检查是否有一个图钉添加到地图,如果没有,添加一个;否则将其移动到正确的位置。

如果您想按照 MVVM 模式实现解决方案,则需要创建一些自定义控件并公开要绑定的属性。

【讨论】:

  • 您好,我去网上搜索了一下,但没有看到任何关于您的答案实施的例子。如果您有任何包含示例代码的参考或建议网站,那将非常有帮助。谢谢
  • 创建自定义控件并不是绝对必要的,同样的事情可以通过现有地图控件上的自定义附加属性来完成。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-31
  • 2015-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-05
相关资源
最近更新 更多