小编Mic*_*nne的帖子

附属物业变更事件?

如果附加属性发生变化,有没有办法获得变更通知?

一个简单的例子是一个CanvasRectangle在它.Rectange使用DepenendyProperties Canvas.Top和设置的位置Canvas.Left.我正在使用一个Adorner通过改变Canvas.Top和来移动矩形Canvas.Left.

<Canvas Width="500" Height="500" >
   <Rectangle Width="40" Height="40" Canvas.Left="10" Canvas.Top="20" />
</Canvas>
Run Code Online (Sandbox Code Playgroud)

下一步是在两者之间创建一个箭头Rectangles.为了跟踪移动Rectangles,每当一个位置发生变化时,箭头必须得到一个变化通知Rectangle.如果我可以在附加属性Canvas.Top更改时获得更改通知,这将很容易.

谢谢你的帮助,迈克尔

c# wpf attached-properties

7
推荐指数
1
解决办法
8883
查看次数

将MouseBindings添加到数据绑定WPF ListView中的项目

当用户点击ListView中的项目时,我正在尝试在我的ViewModel中执行命令.当我添加ListViewItem在XAML我可以再补充一个MouseBinding到它的InputBindings.

<ListView>
<ListView.View>
   <GridView>
      <GridViewColumn Header="Test" />
   </GridView>
   </ListView.View>
   <ListViewItem Content="Item 1" >
      <ListViewItem.InputBindings>
         <MouseBinding Gesture="LeftDoubleClick" Command="{Binding DoubleClickCommand}" />
      </ListViewItem.InputBindings>
 </ListViewItem>
 </ListView>
Run Code Online (Sandbox Code Playgroud)

但是如何在数据绑定ListView中实现这一目标?

<ListView ItemsSource="{Binding Patients}">
<ListView.View>
    <GridView>
        <GridViewColumn Header="Test" />
    </GridView>
    <!-- How to set the MouseBinding for the generated ListViewItems?? -->
</ListView.View>
Run Code Online (Sandbox Code Playgroud)

我已经通过定义ListViewItem样式和替换它ControlTempalte来获得解决方案ListViewItem.虽然,我希望有一个更容易的解决方案.

真诚的,迈克尔

data-binding wpf listview mvvm icommand

3
推荐指数
1
解决办法
7696
查看次数

标签 统计

wpf ×2

attached-properties ×1

c# ×1

data-binding ×1

icommand ×1

listview ×1

mvvm ×1