【问题标题】:Add context menu on right click. [closed]右键单击添加上下文菜单。 [关闭]
【发布时间】:2014-06-03 05:39:51
【问题描述】:
public void mytree()
{
    DatabaseCore db = new DatabaseCore();

    List<allTreeView> myList = new List<allTreeView>();

    DataTable dt = db.FillDataGrid();
    foreach (DataRow row in dt.Rows)
    {
        string categories_id1 = row["ID"].ToString();
        string parent_id = row["parentId"].ToString();
        string categories_name = row["name"].ToString();
        myList.Add(new allTreeView(
                    int.Parse(categories_id1), 
                    categories_name, 
                    int.Parse(parent_id)));
    }
    Dictionary<int, TreeViewItem> flattenedTree = 
        new Dictionary<int, TreeViewItem>();

    foreach (allTreeView item in myList)
    {

        TreeViewItem treeNode = new TreeViewItem();
        treeNode.Header = item.Header;              //this is header
        treeNode.Tag = item;
        flattenedTree.Add(item.ID, treeNode);
        if (flattenedTree.ContainsKey(item.ParentID))
        {
            flattenedTree[item.ParentID].Items.Add(treeNode);
        }
        else
        {
            product_tree.Items.Add(treeNode);
        }
    }
}

这填充了我的树。 我想在右键单击时显示上下文菜单,以便在树的每个节点上复制、剪切、选择和添加更多功能。

【问题讨论】:

  • 在用 wpf 写任何东西之前请先学习 MVVM。你会惊讶于它让生活变得多么简单
  • thanx nit 但我没有足够的时间来学习和理解整个教程.. 我被困在我的应用程序的这一点上。我需要一个解决方案。
  • @kabir,你真的应该听听 nit。您不会在 WPF 中编写这样的代码。
  • 你确定 nakiya ..我一定会学习 MVVM .. 但现在我的工作完成了我很着急.. 当我有空闲时间时我会学习 MVVM

标签: c# wpf treeview contextmenu right-click


【解决方案1】:

在 xaml 中创建一个 Treeview 并使用绑定来填充树。这要容易得多。

那么你可以这样做:

<TreeView Name="MyTreeview" .........>

 <TreeView.ContextMenu x:Uid="cxt">                            
      <ContextMenu Name="ContextMenu">                                          
       <MenuItem Name="AddNew" Header="Add" Click="AddNew_Click"></MenuItem>
      <Separator/>
      <MenuItem Name="CopyItem" Header="Copy(Ctrl + C)"  Click="CopyItemy_Click"> </MenuItem>

       </ContextMenu>
 </TreeView.ContextMenu>

 ......

</TreeView>

【讨论】:

    猜你喜欢
    • 2021-08-19
    • 1970-01-01
    • 1970-01-01
    • 2016-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-25
    • 1970-01-01
    相关资源
    最近更新 更多