coolxap 发表于 2017-4-4 22:08:03

【求助】怎么获取菜单栏skinbarsubitem1按钮选择的皮肤名称

如图,我在barmanger的菜单栏添加了一个skin button,请问怎么获得选择的值呢?


appo_li 发表于 2019-9-16 09:29:00

朋友,你这个问题解决了没?我也在愁这个

pqzc6655321 发表于 2019-11-22 12:52:52

楼主找到方法了没?

zgm4617 发表于 2019-11-24 21:46:32

本帖最后由 zgm4617 于 2019-11-24 23:06 编辑

我也在找这个方法

落叶无痕08 发表于 2020-1-4 17:19:17

本帖最后由 落叶无痕08 于 2020-1-4 17:33 编辑

volatile bool hasGetItemData = false;      
private void skinBarSubItem1_GetItemData(object sender, EventArgs e)
      {
            if (!hasGetItemData)
            {
                hasGetItemData = true;
                BarSubItem barSubItem = (BarSubItem)sender;
                BarItemLinkCollection barItemLinks = barSubItem.ItemLinks;
                addSkinItemClick(barItemLinks);
            }
      }
      private void addSkinItemClick(BarItemLinkCollection collection) {
            foreach (BarItemLink itemLink in collection)
            {
                if (itemLink.Item is BarSubItem) {
                  addSkinItemClick(((BarSubItem)itemLink.Item).ItemLinks);
                }
                else{
                  itemLink.Item.ItemClick += changeSkin;
                }
            }
      }
      void changeSkin(object sender, ItemClickEventArgs e)
      {
            string skinName = e.Item.Caption;
      }
这样来获取就可以了

zgm4617 发表于 2020-7-4 17:19:06

落叶无痕08 发表于 2020-1-4 17:19
volatile bool hasGetItemData = false;      
private void skinBarSubItem1_GetItemData(object sender ...

感谢大神,您的方法真屌!
页: [1]
查看完整版本: 【求助】怎么获取菜单栏skinbarsubitem1按钮选择的皮肤名称