-1

こんにちは。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;
}
4

1 に答える 1

3

SelectedContentTabItemのコンテンツです。あなたが欲しいのはですSelectedItem

于 2012-07-18T10:20:15.990 に答える