こんにちは。TabControlに複数のtabItemを定義しました。tabItem1、tabItem2、tabItem3
これらはCloseableTabItemです。
tabItem1にノードを追加し、ボタンを押してこのノードのサブグラフモデルを作成した場合。the
tabItem2-Header =nodeNameおよびnodeName=となるように、同じノードがtabItem2に表示される必要があります。
tabItem1-ヘッダー。
(TabItem)tabControl.SelectedContent == tabItem1がないと、コードは正しく機能しますが、
問題は、tabItem2に新しいノードを追加し、subGraph-Buttonノードを押すと次のようになります。
tabItem3に追加されましたが、nodeName=tabItem1-Headerです。
私のコードは、「タイプ'System.Windows.Controls.Grid'のオブジェクトをタイプ'System.Windows.Controls.TabItem'にキャストできません。」という例外をスローします。
MyNodeData todata = new MyNodeData();
if (tabItem1.IsLoaded && (TabItem)tabControl.SelectedContent == tabItem1)
{
string childNodeName = (String)tabItem1.Header;
todata.Text = childNodeName;
return;
}
if (tabItem2.IsLoaded)
{
string childNodeName = (String)tabItem2.Header;
todata.Text = childNodeName;
return;
}
if (tabItem3.IsLoaded)
{
string childNodeName = (String)tabItem3.Header;
todata.Text = childNodeName;
return;
}