私は別の項目を追加するメニュー項目を持っています。今私はその新しく追加された項目にクリックイベントを割り当てたいと思う。どうすればこのことができますか?以下はメニュー項目の追加方法です。新しく追加されたメニュー項目のクリックイベント
MI.Items.Add(System.IO.Path.GetFullPath(ofd.FileName));
私は別の項目を追加するメニュー項目を持っています。今私はその新しく追加された項目にクリックイベントを割り当てたいと思う。どうすればこのことができますか?以下はメニュー項目の追加方法です。新しく追加されたメニュー項目のクリックイベント
MI.Items.Add(System.IO.Path.GetFullPath(ofd.FileName));
MenuItem
クラスの新しいインスタンスを作成し、Click
イベントにサブスクライブしてください:
MenuItem newMenuItem = new MenuItem();
newMenuItem.Header = System.IO.Path.GetFullPath(ofd.FileName);
newMenuItem.Click += MenuItemOnClick; // The handler.
MI.Items.Add(newMenuItem);
Add
項目のインデックスを示す整数が追加され、あなたは、このインデックスを使用したコレクションの要素にアクセスするため、イベントを購読することができ返すので、あなたはこのような何かをしなければならないでしょう。
var index = MI.Items.Add(System.IO.Path.GetFullPath(ofd.FileName));
((UIElement)MI.Items.GetItemAt(index)).MouseLeftButtonUp += OnMenuItemMouseUp;
void OnMenuItemMouseUp (object sender, MouseButtonEventArgs e) {
}
は、そのインデックスでMenuItem
を取得し、+=
構文を使用してイベントハンドラをアタッチ:
int itemIndex = MI.Items.Add(System.IO.Path.GetFullPath(ofd.FileName));
MenuItem item = MI.Items[itemIndex] as MenuItem;
item.Click += new RoutedEventHandler(Item_Click);