如何将菜单添加到组件类?

时间:2013-04-17 15:06:35

标签: c# .net menu

我刚刚创建了一个解决方案,并为其添加了“组件类”。

我需要的是menuComponent Class的{​​{1}}中添加componentbar,例如ImageList组件。 NET。

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

我假设你指的是ImageList组件上出现的小小箭头,当你选择它时,你会看到一个选项列表。这需要一个自定义的ComponentDesigner。

参考:

System.Components.Design
System.Design
System.Windows.Forms.Design

这是一个简单的小组件示例:

[Designer(typeof(TestComponentDesigner))]
public class TestComponent : Component {

  public class TestComponentDesigner : ComponentDesigner {
    private DesignerVerbCollection verbs = new DesignerVerbCollection();

    public override void Initialize(IComponent component) {
      base.Initialize(component);
      verbs.Add(new DesignerVerb("Say Hello", new EventHandler(SayHello)));
    }

    public override DesignerVerbCollection Verbs {
      get {
        return verbs;
      }
    }

    private void SayHello(object sender, EventArgs e) {
      MessageBox.Show("Hello");
    }
  }
}

结果:

enter image description here

有关详细信息,请参阅Writing Custom Designers for .NET Components