2010-05-19 111 views
0

我有一個名爲HomePage.xaml的用戶控件。我創建一個模型實例(使用MVVM模式)的代碼隱藏文件在頁面的構造函數使用mvvm將命令綁定到Silverlight 4中的按鈕

MainViewModel model = new MainViewModel(); 

我在HomePage.xaml一個按鈕,我想綁定到命令裏面MainViewModel稱爲GetData()和希望在datagrid中填充數據。 MainViewModel有一個ObservableCollection我將用它來綁定datagrid中的數據。

在沒有綁定命令的情況下填充datagrid中的數據可以正常工作。

我綁定按鈕:

<StackPanel x:Name="stkPanelInput" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center"> 
<Button x:Name="buttonGetData" Width="70" Content="GetData" Command="{Binding GetData}" Click="buttonGetData_Click"/> 
</StackPanel> 

我怎麼綁定使用MVVM命令? 謝謝。

回答

2

和Archie說的一樣,將頁面的DataContext設置爲MainViewModel的實例。

DataContext = model; 

然後你有你的XAML看起來像這樣:

<StackPanel x:Name="stkPanelInput" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center"> 
<Button x:Name="buttonGetData" Width="70" Content="GetData" Command="{Binding GetDataCommand}" Click="buttonGetData_Click"/> 
</StackPanel>