当前位置: 首页 > wzjs >正文

app网站制作下载百度学术搜索

app网站制作下载,百度学术搜索,永仁县建设工程信息网站,我想采集散文 做网站前言 C#WPF之命令绑定 内容 有些控件不支持直接绑定命令,可以调用其他依赖实现命令的绑定。 依赖:Microsoft.Xaml.Behaviors.Wpf 使用如下代码可以实现事件的命令绑定,及传递参数: 1、引用:xmlns:behavior“http://sch…

前言

C#WPF之命令绑定

内容

有些控件不支持直接绑定命令,可以调用其他依赖实现命令的绑定。

依赖:Microsoft.Xaml.Behaviors.Wpf

使用如下代码可以实现事件的命令绑定,及传递参数:

1、引用:xmlns:behavior=“http://schemas.microsoft.com/xaml/behaviors”
2、添加命令绑定代码( 如:代码①)
3、创建实现ICommand 的类public class EventsCommand : ICommand(如代码②)
4、创建命令 public ICommand LoadedWindowCommand{ get; set; }
5、初始化命令、并创建方法(如:代码③)

其中代码①写在**.xaml窗体视图中。代码②单独创建类。命令的初始化及方法绑定是创建在视图对应的ViewModel中如代码③。

代码①
<!--绑定上下文-->
<Window.DataContext><viewmodels:MainViewModel/>
</Window.DataContext><!--事件命令绑定-->
<behavior:Interaction.Triggers><!--窗体加载命令绑定--><behavior:EventTrigger EventName="Loaded"><behavior:InvokeCommandAction Command="{Binding LoadedWindowCommand}"   PassEventArgsToCommand="True"/></behavior:EventTrigger><!--窗体关闭命令绑定--><behavior:EventTrigger EventName="Closing"><behavior:InvokeCommandAction Command="{Binding ClosingWindowCommand}" PassEventArgsToCommand="True"/></behavior:EventTrigger>
</behavior:Interaction.Triggers>
代码②
public class EventsCommand<T> : ICommand
{private readonly Action<T> _execute;private readonly Func<T, bool> _canExecute;public EventsCommand(Action<T> execute, Func<T, bool> canExecute = null){_execute = execute ?? throw new ArgumentNullException(nameof(execute));_canExecute = canExecute;}public bool CanExecute(object parameter){return _canExecute?.Invoke((T)parameter) ?? true;}public void Execute(object parameter){_execute((T)parameter);}public event EventHandler CanExecuteChanged{add { CommandManager.RequerySuggested += value; }remove { CommandManager.RequerySuggested -= value; }}
}
代码③
public class MainViewModel:INotifyPropertyChanged
{public ICommand LoadedWindowCommand { get; set; }public ICommand ClosingWindowCommand { get; set; }public MainViewModel(){LoadedWindowCommand = new EventsCommand<object>(OnLoadedWindow);ClosingWindowCommand = new EventsCommand<object>(OnClosingWindow);}private void OnLoadedWindow(object e){}private void OnClosingWindow(object e){}
}

命令绑定例外

描述

有一种情况是控件里面添加控件,次数使用命令绑定传递参数。使用事件时,传递的一般是外层控件对象。

那么如何实现传递里面的对象呢,可以使用如下方法:使用DataContext数据上下文来传递。

<ScrollViewer Background="#AEAEAE" x:Name="RecordScrollViewer"><ListBox ItemsSource="{Binding ChatRecordCollection}" Margin="5"><ListBox.ItemTemplate><DataTemplate><!-- 显示消息内容 --><TextBlock Text="{Binding Data}"  Margin="10,0,0,0"><behavior:Interaction.Triggers><!--鼠标点击命令事件--><behavior:EventTrigger EventName="PreviewMouseDown"><behavior:InvokeCommandActionCommand="{Binding DataContext.ChatRecordMouseDownCommand, RelativeSource={RelativeSource AncestorType=ListBox}}"CommandParameter="{Binding}"PassEventArgsToCommand="True"/></behavior:EventTrigger></behavior:Interaction.Triggers></TextBlock></DataTemplate></ListBox.ItemTemplate></ListBox>
</ScrollViewer>

结语

以上是个人日常学习中学到的一下知识,和理解。

http://www.dtcms.com/wzjs/202662.html

相关文章:

  • 免费图片在线制作福清seo
  • 建设文明网站包括下载百度app下载
  • 免费软件下载官网安卓aso优化排名
  • 网站建设公司浩森宇特2023年新闻热点事件
  • 一个公司做网站需要注意什么条件专业关键词排名优化软件
  • linodeubuntu一键安装lamp wordpress桔子seo查询
  • 宿州网站建设哪家公司好爱站网ip反域名查询
  • 网站开发项目计划上海网络推广外包公司
  • 武汉房地产网站开发市场调研问卷调查怎么做
  • 网页设计入门首先要学什么福建seo关键词优化外包
  • 南充市住房和城乡建设局网站上海seo顾问推推蛙
  • 政府建设网站网站关键词排名快速提升
  • 自己怎么做专属自己的网站最新网站查询工具
  • 做淘宝网站的编程实例真正免费建站
  • 如何做简单视频网站淘宝关键词排名怎么查
  • 深圳市交易建设工程交易服务中心seo具体优化流程
  • 做网站企业 金坛百度搜索引擎技巧
  • 伊滨区网站建设网站推广方式有哪些
  • 通过服务推广网站百度识图查另一半情头
  • 网站备案好麻烦网站建站设计
  • 台州网站建设 网站制作 网站设计网络推广电话销售技巧和话术
  • 满城住房和城乡建设局网站数据分析培训
  • 河北住房和城乡建设厅网站东莞seo整站优化
  • 宁波俄语网站建设2023年8月疫情恢复
  • 连江网站建设服务百度地址
  • 品牌推广的意义提升seo排名
  • 深圳找个人做网站关键词查网站
  • 网上支付网站怎摸做搜索引擎优化的作用
  • 如何编程做网站温州seo结算
  • 女性做网站发外链软件