2015-12-18 79 views
1

綁定,而試圖代碼MvvmCross的TipCalc例子,我嘗試使用X:綁定而不是常規的結合(在通用應用編程)用x:與MvvmCross

我後面的代碼看起來是這樣的:

public sealed partial class TipView 
{ 
    public new TipViewModel ViewModel 
    { 
     get { return (TipViewModel)base.ViewModel; } 
     set { base.ViewModel = value; } 
    } 

    public TipView() 
    { 
     this.InitializeComponent(); 
    } 
} 

和我的XAML看起來像這樣:

<Grid x:Name="ContentPanel" 
      Margin="12,0,12,0" 
      Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" 
      > 
     <StackPanel> 
      <TextBlock 
       Text="SubTotal" 
       /> 
      <TextBox 
       Text="{x:Bind ViewModel.SubTotal, Mode=TwoWay}" 
       /> 
. 
. 
. 
編寫本我得到以下錯誤,當

Microsoft.Windows.UI.Xaml.Common.targets(350,5): Xaml Internal Error error WMC9999: Unable to cast object of type 'Microsoft.MetadataReader.MetadataOnlyPropertyInfo' to type 'System.Reflection.MethodInfo'. 

我使用的3.5.1版本(最新穩定)

是一個bug的MvvmCross庫?或者我在這裏失蹤的東西?

回答

2

我用下面的語法在我的代碼

public TipViewModel Vm => (TipViewModel) ViewModel; 

而且結合是

Text="{x:Bind Vm.SubTotal, Mode=TwoWay}" 

不知道爲什麼你會得到你的錯誤,你的觀點並從MvxWindowsPage繼承?

+0

我確實繼承了MvxWindowsPage ViewModel是MvxWindowsPage的屬性。 通過創建一個新的Vm,它似乎像改變滑塊時的值不會改變 它看起來像dataContext的另一個實例... – kaycee

+0

任何你爲什麼mewing viewmodel的原因? – Depechie

+0

根據他們的教程: [https://github.com/MvvmCross/MvvmCross/wiki/Tip-Calc-A-Universal-Windows-App-UI-Project] '公新TipViewModel視圖模型 { 獲得{返回(TipViewModel)base.ViewModel; } set {base.ViewModel = value; } }' – kaycee