1

XAMLでは次のことができます

<TabItem Selector.Selected="myEvenHandler"></TabItem>

そのタブが選択されたときのイベントハンドラーを設定します。まったく同じことを動的に行うにはどうすればよいですか。助けることができれば、TabControlのSelectionChangedイベントを使用したくありません。明らかに、TabItemにSelectedイベントがあり、コードでは取得できないようです。これが私がやりたいことです。

TabItem item = new TabItem();
MyCustomControl mcc = new MyCustomControl();
item.Content = mcc;
item.Selected += (s,e) =>  // This event does not exist
{
    selectedControl = mcc;
}
myTabControl.Items.Add(item);
4

1 に答える 1

2

Selector.Selected添付イベントのドキュメントによると、「C#構文」セクションで次のようになります。

AddSelectedHandlerRemoveSelectedHandlerを参照してください

それらのページには、実際にはAddSelectedHandlerページとRemoveSelectedHandlerページへのハイパーリンクはありませんが、見たい場所にあります。したがって、コードは次のようになります。

Selector.AddSelectedHandler(item, (s,e) =>
{
    selectedControl = mcc;
});
于 2010-04-21T23:34:57.280 に答える