wpf - 如何将事件处理程序附加到使用 WPF 中的数据绑定(bind)生成的项目?

标签 wpf datatemplate pixelsense

我正在为 MS Surface 设备进行开发,并使用 ScatterView 来显示一些数据。下面的场景可能也适合普通的 ListBox (和 ListBoxItems)。

当我对 ScatterView 进行数据绑定(bind)时,WPF 会自动使用 ScatterViewItems 包装 DataTemplate 的内容。我想为(生成的)ScatterViewItemScatterManipulationCompleted 事件附加一些事件处理程序,但不知道如何执行此操作。

非常感谢任何帮助。

最佳答案

您可以在容器类型上设置 Style 并指定 EventSetter,如下所示:

<surface:ScatterView>
    <surface:ScatterView.ItemContainerStyle>
        <Style TargetType="{x:Type surface:ScatterViewItem}">
            <EventSetter Event="ScatterManipulationCompleted" Handler="myHandler"/>
        </Style>
    </surface:ScatterView.ItemContainerStyle>
</surface:ScatterView>

关于wpf - 如何将事件处理程序附加到使用 WPF 中的数据绑定(bind)生成的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/718941/

相关文章:

c# - 自定义 WPF/XAML Canvas

c# - 传递所有鼠标事件,但不传递手写笔事件

c# - 微软 Surface vs Windows Touch?

wpf - 是否可以自定义 WPF View 创建机制以使用我自己的 ViewFactory?

c# - 当控件来自 DataTemplate 时,BindingOperations.ClearBinding(...) 不起作用

wpf - 在 Windows 7 和 8 触摸设备上部署 Microsoft Surface 2.0 应用程序

wpf - 包含表面交互元素的 ScatterViewItems

wpf - 我如何检查是否使用 VB6 在 PC 上安装了 "Microsoft Edge WebView2 Runtime"或 "Microsoft Edge Insider Channels"金丝雀

c# - 在 System.Windows.UIElement 中包装来自 System.Windows.Forms 的控件

wpf - tabControl 中的多个 userControl 实例