创建MVVM Light UWP应用程序时,我无法通过View Model获得编程设计时数据。我相信这可能是由于Visual Studio 2015在设计器中添加了绑定的属性名称。我已经确认这将在项目模板(MVVM Light 2015 for VS2015 - Version 5.2.0.0)中创建一个空白的MvvmLight(Win10Univ)应用程序,它清楚地显示“WelcomeTitle”,该属性的名称而不是“欢迎使用MVVM Light [设计]“在DesignDataService
类中设置。
MVVM Light Main Page capture in designer showing incorrect design time data
在我自己的项目中看到这个问题时,我在我的View模型中使用了这样的东西:
if (this.IsInDesignMode)
{
// Load design time data when in design mode
this.Duration = "2 HRS 13 MINS";
}
然后我绑定到我的View中的属性,数据上下文设置如下:
<Page.DataContext>
<Binding Path="FooBarPageViewModel" Source="{StaticResource Locator}" />
</Page.DataContext>
现在,通常上面是根据MVVM Light项目模板应用程序所需要做的所有事情,但我试图关注但没有成功:
d:DataContext="{Binding FooBarPageViewModel, Source={StaticResource Locator}}"
我也试过使用x:Bind,但仍然看到同样的问题。
那么有人知道如何解决这个问题或遇到过类似问题吗?
注意:此问题可能与MVVM Light无关,而可能是UWP平台问题。
答案 0 :(得分:2)
好的,因此在x86架构中构建模板MVVM Light UWP应用程序允许您在Visual Studio设计器中查看设计时数据。但是,有几点: