首页 > 其他分享 >WPF 在 Style 中将事件转化为命令.

WPF 在 Style 中将事件转化为命令.

时间:2022-12-06 11:33:26浏览次数:64  
标签:控件 Style 中将 转化 事件 WPF

某些情况下需要通过样式将 View 中控件的事件转接到 ViewModel 中的 Command 上,且不想重写模版.

可以使用 GitHub - hellzerg/optimizer: The finest Windows Optimizer

只需要在 Style 中使用 Setter 即可达到目的.

例:

<Style TargetType="{x:Type Border}">
    <Setter Property="local:CommandBehaviorCollection.StyleBehaviors">
        <Setter.Value>
            <local:BehaviorBindingCollection>
                <local:BehaviorBinding Event="MouseRightButtonDown" Command="{Binding SomeCommand}" CommandParameter="A Command on MouseRightButtonDown"/>
            </local:BehaviorBindingCollection>
        </Setter.Value>
    </Setter>
</Style>

 

标签:控件,Style,中将,转化,事件,WPF
From: https://www.cnblogs.com/8u7tgyjire7890/p/16954744.html

相关文章

  • 使用DevExpress WPF主题设计器轻松创建Office 2019绿色主题(一)
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专......
  • 程序与架构——读《深入浅出WPF》第6章
    一。程序的本质:    数据+算法二。精力过多放在UI上的转变:    UI为核心时,数据处被动状态。===>>>以数据为核心,数据处主动地位。三。三层结构——以数据......
  • Win7 运行 net7 Blazor wpf 条件
    Win7运行net7Blazorwpf条件win7sp1MicrosoftVisualC++可再发行程序包14.2MBvc_redistMicrosoft更新独立程序包0.98MBKB2999226Microsoft更新......
  • WPF学习---系统的学习XAML语法
    1,XAML文档的树形结构:UI在用户眼里面是个平面结构。如下图所示,在用户眼里看来,这个界面就是一个窗体里面平铺了4个文本框和一个按钮的界面。在传统的VisualC++、Delphi......
  • wpf GridControl
    TheWPFDataGrid(GridControl)isadata-awarecontroldesignedtodisplayandeditdataindifferentlayouts:tabular,treelike,andcard.TheGridControlal......
  • WPF之深入浅出话事件
    就像属性系统在WPF中得到了升级、进化为依赖属性一样,事件系统在WPF也得到了升级-----进化成为了路由事件(RoutedEvent),并在其基础上衍生出命令传递机制。这些机制在很大程度......
  • WPF之Binding深入探讨
    1,DataBinding在WPF中的地位程序的本质是数据+算法。数据会在存储、逻辑和界面三层之间流通,所以站在数据的角度上来看,这三层都很重要。但算法在3层中的分布是不均匀的,对于一......
  • WPF学习之深入浅出话命令
    WPF为我们准备了完善的命令系统,你可能会问:“有了路由事件为什么还需要命令系统呢?”。事件的作用是发布、传播一些消息,消息传达到了接收者,事件的指令也就算完成了,至于如何响......
  • WPF深入浅出话资源
    我们把有用的东西称为资源。“兵马未动,粮草先行”-----程序中的各种数据就是算法的原料和粮草。程序中可以存放数据的地方有很多,可以放在数据库里、可以存储在变量里。介于......
  • WPF之从0开始学习XMAL
    剖析最简单的XMAL代码:<Windowx:Class="WpfApplication2.Window2"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://s......