ObservableCollection<ItemClass> itemList = new ObservableCollection<ItemClass>();            Button btn = sender as Button;            ItemClass item1 = new ItemClass();
            item1.ItemHeader = "item1";
            itemList.Add(item1);            ItemClass item2 = new ItemClass();
            item2.ItemHeader = "item2";
            itemList.Add(item2);            btn.ContextMenu.ItemsSource = itemList;

解决方案 »

  1.   


     ObservableCollection<ItemClass> itemList = new ObservableCollection<ItemClass>();            Button btn = sender as Button;            ItemClass item1 = new ItemClass();
                item1.ItemHeader = "item1";
                itemList.Add(item1);            ItemClass item2 = new ItemClass();
                item2.ItemHeader = "item2";
                itemList.Add(item2);            btn.ContextMenu.ItemsSource = itemList;
    你已经为 ItemsSource  指定了,所以添加不了的。
      

  2.   


     ObservableCollection<ItemClass> itemList = new ObservableCollection<ItemClass>();            Button btn = sender as Button;            ItemClass item1 = new ItemClass();
                item1.ItemHeader = "item1";
                itemList.Add(item1);            ItemClass item2 = new ItemClass();
                item2.ItemHeader = "item2";
                itemList.Add(item2);            btn.ContextMenu.ItemsSource = itemList;
    你已经为 ItemsSource  指定了,所以添加不了的。那怎么办?想让ContextMenu有几个固定项和一个分割线,然后剩下的就动态添加,怎么个思路可以实现?
      

  3.   


     ObservableCollection<ItemClass> itemList = new ObservableCollection<ItemClass>();            Button btn = sender as Button;            ItemClass item1 = new ItemClass();
                item1.ItemHeader = "item1";
                itemList.Add(item1);            ItemClass item2 = new ItemClass();
                item2.ItemHeader = "item2";
                itemList.Add(item2);            btn.ContextMenu.ItemsSource = itemList;
    你已经为 ItemsSource  指定了,所以添加不了的。那怎么办?想让ContextMenu有几个固定项和一个分割线,然后剩下的就动态添加,怎么个思路可以实现?
    手动方式添加可以,被指定它的ItemsSources.例如:ItemClass item1 = new ItemClass();
                item1.ItemHeader = "item1";
                itemList.Add(item1);
                btn.ContextMenu.Items.Add(new MenuItem() { Header = item1.ItemHeader });
                btn.ContextMenu.Items.Add(new Separator());
                ItemClass item2 = new ItemClass();
                item2.ItemHeader = "item2";
                itemList.Add(item2);
                btn.ContextMenu.Items.Add(new MenuItem() { Header = item2.ItemHeader });
      

  4.   


     ObservableCollection<ItemClass> itemList = new ObservableCollection<ItemClass>();            Button btn = sender as Button;            ItemClass item1 = new ItemClass();
                item1.ItemHeader = "item1";
                itemList.Add(item1);            ItemClass item2 = new ItemClass();
                item2.ItemHeader = "item2";
                itemList.Add(item2);            btn.ContextMenu.ItemsSource = itemList;
    你已经为 ItemsSource  指定了,所以添加不了的。那怎么办?想让ContextMenu有几个固定项和一个分割线,然后剩下的就动态添加,怎么个思路可以实现?
    手动方式添加可以,被指定它的ItemsSources.例如:ItemClass item1 = new ItemClass();
                item1.ItemHeader = "item1";
                itemList.Add(item1);
                btn.ContextMenu.Items.Add(new MenuItem() { Header = item1.ItemHeader });
                btn.ContextMenu.Items.Add(new Separator());
                ItemClass item2 = new ItemClass();
                item2.ItemHeader = "item2";
                itemList.Add(item2);
                btn.ContextMenu.Items.Add(new MenuItem() { Header = item2.ItemHeader });

    好吧,这又回到最原始的菜单了。