添加\编辑\删除 WPF TreeView 代码背后的右键单击上下文菜单

发布于 2024-12-12 04:01:29 字数 48 浏览 0 评论 0原文

我想在我的 C# 代码中添加或更改 wpf 树视图的上下文菜单。我该怎么做呢???

I Want to Add or Change the context menu of treeview of wpf in my C# code.how can I do it???

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

情感失落者 2024-12-19 04:01:29

为什么你需要那个?也许用其他方式来做而不影响后面的代码会更好?我更喜欢视图和逻辑解耦,基本上这是我建议遵循的 MVVM 方法。

无论如何,您可以通过添加 Initialized 事件来完成此操作处理程序,而不是在代码隐藏中传递它:

XAML:

<TreeView ... />
  <TreeView.ContextMenu Initialized="OnTreeViewMenuInitialized">
    <MenuItem Header="Add" Command="{Binding AddCommand}" />
  </TreeView.ContextMenu>
</TreeView>

代码隐藏:

private void OnTreeViewMenuInitialized(object sender, EventArgs e)
{
     var contextMenu = (ContextMenu)sender;
     ...
}

Why you need that? Perhaps it would be better to do it in an other way without affecting a code behind? I preffer when View and logic is decoupled, basically this is MVVM approach I would suggest to follow.

Anyway you can do it by adding Initialized event handler and than handing it in code behind:

XAML:

<TreeView ... />
  <TreeView.ContextMenu Initialized="OnTreeViewMenuInitialized">
    <MenuItem Header="Add" Command="{Binding AddCommand}" />
  </TreeView.ContextMenu>
</TreeView>

Code behind:

private void OnTreeViewMenuInitialized(object sender, EventArgs e)
{
     var contextMenu = (ContextMenu)sender;
     ...
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文