下面的示例演示了如何自定义 RibbonControl 的自定义菜单。 RibbonControl.ShowCustomizationMenu 事件被接管,来添加一个自定义的 About 菜单项。
结果如下图所示:
C# | 复制代码 |
---|---|
using DevExpress.XtraBars; using DevExpress.XtraBars.Ribbon; // The item to be added to the Customization Menu BarItem biAbout; // Initialize the item and add it to the RibbonControl's item collection. private void Form1_Load(object sender, EventArgs e) { biAbout = new BarButtonItem(); biAbout.Caption = "About"; biAbout.ItemClick += new ItemClickEventHandler(biAbout_ItemClick); ribbonControl1.Items.Add(biAbout); } // The method invoked when the item is clicked. void biAbout_ItemClick(object sender, ItemClickEventArgs e) { MessageBox.Show("About"); } BarItemLink biAboutLink = null; // Add the item to the Customization Menu. private void ribbonControl1_ShowCustomizationMenu(object sender, RibbonCustomizationMenuEventArgs e) { if (biAboutLink == null) { biAboutLink = e.CustomizationMenu.AddItem(biAbout); } } |
Visual Basic | 复制代码 |
---|---|
Imports DevExpress.XtraBars ' The item to be added to the Customization Menu Dim biAbout As BarItem ' Initialize the item and add it to the RibbonControl's item collection. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles MyBase.Load biAbout = New BarButtonItem() biAbout.Caption = "About" AddHandler biAbout.ItemClick, AddressOf biAbout_ItemClick RibbonControl1.Items.Add(biAbout) End Sub ' The method invoked when the item is clicked. Private Sub biAbout_ItemClick(ByVal sender As System.Object, _ ByVal e As DevExpress.XtraBars.ItemClickEventArgs) MessageBox.Show("About") End Sub Dim biAboutLink As BarItemLink = Nothing ' Add the item to the Customization Menu. Private Sub RibbonControl1_ShowCustomizationMenu(ByVal sender As System.Object, _ ByVal e As DevExpress.XtraBars.Ribbon.RibbonCustomizationMenuEventArgs) _ Handles RibbonControl1.ShowCustomizationMenu If biAboutLink Is Nothing Then biAboutLink = e.CustomizationMenu.AddItem(biAbout) End If End Sub |