目录
引言
行为是高度可定制的独立类型,它为所属控件类型提供操作模式,但不局限于某一个控件。控件的界面逻辑大都可以被认为是行为,如TextBox被聚焦后自动权限、鼠标悬浮时背景变红色等。
安装Nuget包
.Net不同界面框架下有不同的包,WPF下就用Microsoft.Xaml.Behaviors.Wpf
HandyControls也有行为和触发器,同名类型,如果你安装过HandyControls就不需要安装这个包
添加命名空间:
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
1、行为Behaviors
官方也提供了一些默认行为,但不多,但行为实现起来非常简单。
1.1、鼠标进入背景变色
public class MyBehavior: Microsoft.Xaml.Behaviors.Behavior<TextBox>
{
protected override void OnAttached()
{
base.OnAttached();
AssociatedObject.MouseEnter += (_, _) => AssociatedObject.Background = Brushes.Orange;
}
protected override void OnDetaching()
{
}
}
XAML代码:
<TextBox Text="{Binding Info}" Style="{StaticResourc