使用 mvvm 将命令绑定到 silverlight 4 中的按钮
我有一个名为 HomePage.xaml
的用户控件。我正在页面构造函数的代码隐藏文件中创建一个模型实例(使用 MVVM 模式),因为
MainViewModel model = new MainViewModel();
我在 HomePage.xaml
中有一个按钮,我想将其绑定到 内的命令MainViewModel
调用了 GetData()
并希望填充数据网格中的数据。 MainViewModel 有一个 ObservableCollection,我将用它来绑定数据网格中的数据。
在不绑定命令的情况下填充数据网格中的数据效果很好。
我将按钮绑定为:
<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 绑定命令?
I have a user control called HomePage.xaml
. I'm creating a model instance (using MVVM pattern) in the code behind file in the constructor of page as
MainViewModel model = new MainViewModel();
I have a button in HomePage.xaml
which I want to bind to the command inside MainViewModel
called GetData()
and want to populate the data in datagrid. MainViewModel
has an ObservableCollection
which I would use to bind the data in datagrid.
Populating the data in datagrid without binding command works fine.
I'm binding the button as:
<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>
How shall I bind the command using MVVM?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
就像 Archie 所说,将页面的 DataContext 设置为 MainViewModel 的实例。
然后你的 XAML 看起来像这样:
Like Archie said, set the DataContext of your page to the instance of your MainViewModel.
Then you have your XAML look like this: