直接上代码,首先是一个ContextMenu的模板: <ContextMenu x:Key="Menu" BorderThickness="0.3" FontSize="13" DataContext="{Binding PlacementTarget.Tag, RelativeSource={RelativeSource Self}}"> <MenuItem Header="复制" Co…
原文:WPF ListBoxItem模板中添加CheckBox选中问题 是这样的,需要一个ListBox来展示照片,并添加一个选中的CheckBox.这就需要对ListBox的ItemTemplate的DataTemplate进行定制.添加一个Image和一个CheckBox. 大概是这样子的. <Setter Property="ItemTemplate"> <Setter.Value> <DataTemplate> <Grid Width=…
场景:ListBox中有个ContextMenu,希望点击其中一个菜单项的时候把ListBox当做CommandParameter传递给Command,但是发现无论是通过ElementName还是RelativeSource中的FindAncestor传值,命令接收到的参数一直都是null. 分析:通过网上查找,找到这么一句话“The problem is that the ContextMenu is at the root of its own visual tree, so any Rel…
场景:视频上传功能,上传列表使用DataGrid控件,视频有不同的状态对应不同的操作,DataGrid中最后一列为操作列,里面是Button控件.希望点击Button后执行对应的操作,但是设置Button的 Command="{Binding VideoOperationCommand}"后触发不了操作. XAML代码如下: <DataGrid ItemsSource="{Binding VideoList}"> <DataGrid.Columns…
<Style TargetType="{x:Type TabItem}" x:Key="EditorTabItemStyle"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type TabItem}"> <Border x:Name="layout&quo…
今天比较闲,做一个练手的项目,结果在xaml中写了一个用户的数据模板后,在其中的某个Canvas上绑定了一个鼠标左击的事件,结果调试的时候,无论怎么点击都不跳到断点那里,百思不得其解. 之后尝试不绑定事件,直接采用内联事件的写法,将事件写在控件上,并且事件的处理写在cs代码而非ViewModel中,则可以使用,如此可以判断是采用MVVM时,命令没有成功绑定到事件上. 刚开始以为是DevExpress的MVVM框架的BUG.后来改成自己手写的MVVM,并未解决问题,思考再三,觉得是数据模板并未获取…
<DataGridTemplateColumn Header="设备状态" IsReadOnly="True" Width="150"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <!--<TextBlock HorizontalAlignment="Center" VerticalAlignment="C…
一.首先回顾一下有哪些绑定策略? 看这个实在是有点抽象了,我们来看具体的实例分析吧! 二.简单的Demo实例 @绑定:传递一个字符串作为属性的值.比如 str : ‘@string’ 控制器中代码部分示例: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 myDirec.controller('MyCtrl3',['$scope',function($scope){    $scope.ctrlFlavor=鸡尾酒;         $scope.sayHell…
原文:WPF中ContextMenu(右键菜单)使用Command在部分控件上默认为灰色的处理方法 问题描述 今天发现如果我想在一个TextBlock弄一个右键菜单,并且使用Command绑定,结果发现默认菜单式不可用的. 问题原因 这个问题不知道算不算BUG,反正如果是在一个不可获得的焦点的东西上面使用ContextMenu,CanExecute的事件路由就会停止在ContextMenu,就没办法到达窗体上.一个解决的方案是吧CommandTarget设置到窗体上去. 事例代码 <Window…
原文:WPF Binding ElementName方式无效的解决方法--x:Reference绑定 需求: 背景:Grid的有一个TextBlock name:T1和一个ListBox,ListBox中有两个TextBlock name:T2,T3 要求:T2的前景色绑定到T1的前景色上(其他属性同理)T3的前景色绑定到T2上 下面的代码去掉了所有不必要的内容,仅保留了两种绑定方式 <Path> <Path.ToolTip> <ToolTip> <StackPa…