2010-11-23 3 views
0

私はその場でボタンを作成し、それらのイベントハンドラを作成しています。コードが実行されると、オンザフライでメニューを正常に入力する限り、すべて正常に動作します。ボタンをクリックすると、イベントは発生しますが、sender = Nothingとなり、オブジェクトはインスタンス例外に設定されません。何か案は?何かが欠けているはずです。イベントハンドラは、インスタンス化されていない送信側を渡します

Imports DevExpress.XtraBars.Ribbon 

Public Class Form1 

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
     Dim menu As New RibbonControl 
     Dim aPage As New RibbonPage("Nicks Page") 
     'groups' 
     Dim aGroup1 As New RibbonPageGroup("1st Group") 

     'ADD BUTTONS TO RIBBON GROUP HERE' 
     Dim i As New DevExpress.XtraBars.BarButtonItem() 
     i.Caption = "Nicks Button" 
     AddHandler i.ItemClick, AddressOf y 
     aGroup1.ItemLinks.Add(i) 

     Dim i2 As New DevExpress.XtraBars.BarButtonItem() 
     i2.Caption = "Nicks Other Button" 
     AddHandler i2.ItemClick, AddressOf y 
     aGroup1.ItemLinks.Add(i2) 

     aPage.Groups.Add(aGroup1) 
     menu.Pages.Add(aPage) 
     Me.Controls.Add(menu) 
    End Sub 

    Private Sub y(ByVal sender As System.Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs) 
     'EXCEPTION SENDER=NOTHING MSGBOX FAILS' 
     MsgBox(CType(sender, DevExpress.XtraBars.BarButtonItem).Caption) 
    End Sub 
End Class 

答えて

1

送信者はBarManagerです。代わりにe.Itemを使用してください。

+0

THank You非常に! –

関連する問題