赞
踩
通过把属性改成 {Binding Title} 实现绑定 MainWindowViewModel 中的变量
MainWindow.xaml
<Window x:Class="demo1.Views.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:prism="http://prismlibrary.com/"
prism:ViewModelLocator.AutoWireViewModel="True"
Title="{Binding Title}" Height="350" Width="525" >
<Grid>
<ContentControl prism:RegionManager.RegionName="ContentRegion" />
<StackPanel>
<TextBlock Text="123321"></TextBlock>
<TextBox Text="{Binding Title}" Margin="10 20 30 10" FontSize="20"></TextBox>
<TextBox Text="{Binding ShowText}"></TextBox>
</StackPanel>
</Grid>
</Window>
MainWindowViewModel.cs
using Prism.Mvvm; namespace demo1.ViewModels { public class MainWindowViewModel : BindableBase { private string _title = "Prism Application"; public string Title { get { return _title; } set { SetProperty(ref _title, value); } } private string _ShowText = "none"; public string ShowText { get { return _ShowText; } set { SetProperty(ref _ShowText, value); } } public MainWindowViewModel() { } } }
运行效果
MainWindow.xaml
<Window x:Class="demo1.Views.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:prism="http://prismlibrary.com/" prism:ViewModelLocator.AutoWireViewModel="True" Title="{Binding Title}" Height="350" Width="525" > <Grid> <ContentControl prism:RegionManager.RegionName="ContentRegion" /> <StackPanel> <TextBlock Text="123321"></TextBlock> <TextBox Text="{Binding Title}" Margin="10 20 30 10" FontSize="20"></TextBox> <TextBox Text="{Binding ShowText}"></TextBox> <!-- 按钮命令绑定 --> <Button Content="按钮1" Width="100" Command="{Binding BT1Command}"></Button> </StackPanel> </Grid> </Window>
MainWindowViewModel.cs
using Prism.Commands; using Prism.Mvvm; using System.Windows; namespace demo1.ViewModels { public class MainWindowViewModel : BindableBase { private string _title = "Prism Application"; private string _ShowText = "none"; public string Title { get { return _title; } set { SetProperty(ref _title, value); } } public string ShowText { get { return _ShowText; } set { SetProperty(ref _ShowText, value); } } private DelegateCommand _BT1Command; public DelegateCommand BT1Command => _BT1Command ?? (_BT1Command = new DelegateCommand(ExecuteBT1Command)); void ExecuteBT1Command() { MessageBox.Show("123", "321"); } public MainWindowViewModel() { } } }
运行效果
MainWindow.xaml 还是上面例子的 MainWindow.xaml
MainWindowViewModel.cs
using Prism.Commands; using Prism.Mvvm; using System.Windows; namespace demo1.ViewModels { public class MainWindowViewModel : BindableBase { private string _title = "Prism Application"; private string _ShowText = "none"; public string Title { get { return _title; } set { SetProperty(ref _title, value); } } public string ShowText { get { return _ShowText; } set { SetProperty(ref _ShowText, value); } } private DelegateCommand _BT1Command; public DelegateCommand BT1Command => _BT1Command ?? (_BT1Command = new DelegateCommand(ExecuteBT1Command)); void ExecuteBT1Command() { MessageBox.Show(Title, "321"); ShowText = Title; } public MainWindowViewModel() { } } }
运行效果
可以看到,现在输入框里面输入一些文字,然后点击按钮1,弹出框显示输入的文字,然后下面的TextBox也显示输入的文字
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。