WPF | 跟着视频敲代码8 | WPF框架(MvvMLight)
https://www.bilibili.com/video/BV1nY411a7T8?p=9
命令Command
更改通知方法 RaisePropertyChanged
"WPF04.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:WPF04" mc:Ignorable="d" Title="MainWindow" Height="450" Width="800"> "Horizontal"> "{Binding Name}" Height="20" Width="200">
using System.Windows; namespace WPF04 { ////// Interaction logic for MainWindow.xaml /// public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); this.DataContext = new MainViewModel(); } } }
using GalaSoft.MvvmLight; using GalaSoft.MvvmLight.Command; using System.Windows; namespace WPF04 { public class MainViewModel : ViewModelBase { ////// 供前端的Command命令Binding调用 /// public RelayCommand ShowCommand { get; set; } public MainViewModel() { ShowCommand = new RelayCommand(Show); } private string name; public string Name { get { return name; } set { name = value; RaisePropertyChanged(); } } private string title; public string Title { get { return title; } set { title = value; RaisePropertyChanged(); } } public void Show() { Title = "你点击了按钮 this is Title"; Name = "你点击了按钮 this is Name"; MessageBox.Show(Name); } } }
另外也可使用消息通知
using GalaSoft.MvvmLight.Messaging
Messenger.Default.Register
Messenger.Default.Send