簡體   English   中英

創建UWP MVVM Light項目時未顯示設計時數據

[英]Design-time data not showing when creating a UWP MVVM Light project

創建MVVM Light UWP應用程序時,無法通過我的視圖模型獲取編程設計時間數據。 我認為這可能是由於Visual Studio 2015在設計器中添加了綁定的屬性名稱。 我確認這是在項目模板(VS2015的MVVM Light 2015-5.2.0.0版)中創建一個空白的MvvmLight(Win10Univ)應用,並且它清楚地顯示了“ WelcomeTitle”,該屬性的名稱而不是“ Welcome to MVVM Light [設計]”,這是在DesignDataService類中設置的。

設計器中的MVVM Light Main Page捕獲顯示了不正確的設計時間數據

在我自己的項目中看到此問題時,我在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平台問題。

好的,因此在x86體系結構中構建模板MVVM Light UWP應用程序使您可以在Visual Studio設計器中查看設計時數據。 但是,有幾點要點:

  • 在x86模式下,必須在設計器中啟用項目代碼按鈕才能查看設計時間數據。
  • 如果使用x86在XAML頁面中同時使用x:bind和運行時綁定,則設計器將崩潰。 您可以在設計器中禁用項目代碼以修復崩潰,但隨后設計時間數據將不再起作用。
  • 在x64模式下,您似乎無法啟用項目代碼按鈕,從而導致了此原始問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM