6

私はWPFタブコントロールを持っています..

そのTabControlにタブを動的に追加しています

今、タブコントロールのすべてのタブに閉じるボタンを付けたい..

それで、そのタブコントロールに閉じるボタンを追加する方法を教えてください..

タブを追加するコード

private void AddTab(ITabbedMDI mdiChild)
    {
       if (_mdiChildren.ContainsKey(mdiChild.UniqueTabName))
        {
            //user control is already opened in tab. 
            //So set focus to the tab item where the control hosted
            foreach (object item in tcMdi.Items)
            {
                TabItem ti = (TabItem)item;
                if (ti.Name == mdiChild.UniqueTabName)
                {
                    ucChildLoc = (UserControl)mdiChild;
                    ti.Focus();
                    //tcMdi.Width = this.ucChildLoc.Width;
                    //tcMdi.Height = this.ucChildLoc.Height;
                    break;
                }
            }
        }
   }

閉じるタブのコード

private void CloseTab(ITabbedMDI tab, EventArgs e)
    {
        TabItem ti = null;
        foreach(TabItem item in tcMdi.Items)
        {
            if (tab.UniqueTabName == ((ITabbedMDI)item.Content).UniqueTabName)
            {
                ti = item;
                break;
            }
        }
        if (ti != null)
        {
            _mdiChildren.Remove(((ITabbedMDI)ti.Content).UniqueTabName);
            tcMdi.Items.Remove(ti);
        }
    }

この記事のTabControlを使用しています

http://www.codeproject.com/Articles/32362/Tabbed-MDI-in-WPF

前もって感謝します..

4

3 に答える 3

-1

TabControlには、TabItemを閉じる機能はありません。

'x'ボタンを追加し、可視性をハックとして折りたたみ/非表示に設定できます。

または、InfragisticsによるXamTabControl、またはタブのクローズをサポートするその他のベンダー製品を確認できます。

于 2012-11-19T11:34:59.550 に答える