C# WPF命令 I command
https://www.bilibili.com/video/BV1nY411a7T8?p=7
ICommand教学视频链接
ICommand–是所有命令的核心接口; 使用ICommand进行开发;
常用的的快捷键
快捷键 F12 ---------- 进入函数定义
代码的注释和取消注释
Ctrl + K + C --------- 注释 C#代码和WPF代码
Ctrl + K + U ---------- 取消注释
界面UI XAML 代码
<Grid>
<Button Command="{ Binding ShowCommand }"/>
</Grid>
在主窗体中实现UI和逻辑的关联;
namespace _20220513_I_command
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
this.DataContext = new MainViewModel(); //--- 关联 UI 和 逻辑功能
}
}
}
添加 — 新建两个类文件
类文件1 ------ MainViewModel.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows; // ---------- 添加这个命名空间的引用 2022年5月13日
namespace _20220513_I_command
{
public class MainViewModel
{
public MainViewModel()
{
ShowCommand = new MyCommand(Show);
}
public MyCommand ShowCommand { get; set; }
public void Show()
{
MessageBox.Show("点击了按钮!");
}
}
类文件2 ------ MyCommand.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Input; //----------创建一个类之后,添加这个引用 2022年5月13日07:52:32
namespace _20220513_I_command
{
public class MyCommand : ICommand //--- 可以按快捷键 F12 看内部情况
{
Action executeAction;
public MyCommand(Action action)
{
executeAction = action;
}
public event EventHandler? CanExecuteChanged;
public bool CanExecute(object? parameter)
{
return true;
}
public void Execute(object? parameter)
{
executeAction();
}
}
}
实现方法2:使用窗体应用开发,添加click事件
<Grid>
<Button Click="Button_Click"/> //新建一个事件
</Grid>
快捷键的使用 : F12 可以直接进入函数体内部
或者 直接去界面进行双击。 进入函数体
private void Button_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("点击了按钮!");
}