1

当双击 GridView 中的项目时,我想在我的窗口中添加选项卡。但是将添加的选项卡取决于单击的项目。我应该在 WPF 上以哪种方式执行此操作?我想过RoutedEvents,但我不知道如何用它传递参数。有什么建议么?

4

2 回答 2

6

这篇 codeproject 文章介绍了使用具有不同参数类型的 newRoutedEvent而不只是RoutedEventArgs(相当远,搜索“第二次使用自定义 RoutedEventArgs”),尽管我希望 WPF 包含RoutedEventHandler类似于 CLR 的版本,EventHandler<T> where T : EventArgs因此您不必声明一个新的每次都委托。

摘要:

  • 创建一个新类型,该类型是 RoutedEventArgs 的子类型,并具有您的数据的属性。
  • 确保您的 RoutedEventArgs 子类型实现了 RoutedEventArgs 的非默认构造函数,因为它需要这些构造函数才能工作。
  • 声明一个与此子类型匹配的新委托。
  • 像在代码中使用任何其他自定义事件一样使用(也包含在该链接中)。
于 2010-05-30T22:01:59.903 回答
0

使用命令而不是路由事件:

为单击的项目设置命令,并使用 XAML 中的 RelativeSource 绑定将单击的项目的引用作为命令的参数传递。

于 2010-05-30T22:15:42.233 回答