C# WPF:Lambda表达式实现窗口拖拽

C# WPF:Lambda表达式实现窗口拖拽

  • 使用方法:在构造函数里订阅窗体移动事件

提示:先说一下Lambda表达式的基本语法,详细教程去微软官方文档中心

如果 lambda 表达式不返回值,则可以将其转换为 Action 委托类型之一;否则,可将其转换为 Func 委托类型之一。 例如,有 2 个参数且不返回值的 Lambda 表达式可转换为 Action 委托。 有 1 个参数且不返回值的 Lambda 表达式可转换为 Func 委托。 以下示例中,lambda 表达式 x => x * x(指定名为 x 的参数并返回 x 平方值)将分配给委托类型的变量:

Func<int, int> square = x => x * x;
Console.WriteLine(square(5));
// Output:
// 25

微软官方文档中心: Lambda 表达式


提示:以下是本篇文章正文内容,下面案例可供参考


使用方法:在构造函数里订阅窗体移动事件

C# WPF:Lambda表达式实现窗口拖拽_第1张图片
代码如下(示例):

this.MouseMove += (s, e) =>
 {
     if (e.LeftButton == MouseButtonState.Pressed)
      {
          this.DragMove();
      }
};

MouseMove 事件F12 找到位置如下:
在这里插入图片描述
其两个参数分别对应上方(s,e)两个参数,其中是s,e可以任意更改的,只是代表一个参数。



你可能感兴趣的:(WPF,C#,WPF,Lambda,lambda表达式)