2

Windowsフォームアプリケーションで完全なFirefoxを試しました。タブ追加ページをいくつか追加しましたが、クリックしても閉じません。タブページに十字ボタンを貼り付ける方法がわかりません。私のコーディング部分は次のとおりです:-

private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (tabControl1.SelectedTab.Text == "+")
        {
            AddNewTab();
        }
        foreach (Control item in tabControl1.SelectedTab.Controls)
        {
            if (item.GetType() == typeof(WebBrowser))
            {
                WebBrowser wb = (WebBrowser)item;
                toolStripButton1.Enabled = wb.CanGoBack;
                toolStripButton2.Enabled = wb.CanGoForward;
            }
        }
        this.wb.DocumentTitleChanged += Browser_DocumentTitleChanged;
        this.wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);
    }

ここに画像の説明を入力

私の閉じた関数--

 private void tabPage1_Click(object sender, EventArgs e)
    {
        if (tabControl1.SelectedTab != null)
        {
            tabControl1.SelectedTab.Dispose();
        }
    }

ダブルクリックでタブページを閉じる機能ですが、FireFoxと同じようにボタンでタブページを閉じたいです。

4

1 に答える 1

2

あなたがしたいことはTabControlの範囲外です。

これを行うには、カスタムコントロールを作成する必要があります。

カスタムコントロールでは、ラベルといくつかのパネルコントロールに画像とテキストを含む小さなPictureBoxを追加できます。+

+ クリックイベントをコーディングして、クロージングテクニックを呼び出します。

ラベルクリックイベントをコーディングして、HTMLページとともにフォームにさまざまなパネルを表示します。

編集:ブライアンが親切にも以下で指摘したように、CodeProjectでこれを行う方法に関する優れたチュートリアルがあります:

CodeProject:FireFoxのようなタブコントロール
スクリーンショット

于 2013-03-07T19:03:19.203 に答える