2

私はウェブブラウザを作っています、私はその新しいタブページ、ブックマーク、ホームページ、デフォルトの検索エンジンなどのようないくつかの部分をしました。タブページを閉じる方法について混乱しています。ダブルクリック、マウスダウン、アップなどを試しましたが、問題を解決できません。私はそのようなTABPAGEを作成しました。よろしくお願いします。

 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;
            }
        }

ウィンドウフォームアプリケーションのスナップショット

ここに画像の説明を入力してください

4

3 に答える 3

2

TabPageを破棄してみてください。フォームの「タブを閉じる」というボタンを想定します。

private void closeTab_Click(object sender, EventArgs e) {
  if (tabControl1.SelectedTab != null) {
    tabControl1.SelectedTab.Dispose();
  }
}
于 2013-03-06T20:14:58.383 に答える
0

これを行うにはJavascriptが必要です。window.close()を使用します:

close();

注:現在のウィンドウが暗示されます。これは同等です:

window.close();

または、別のウィンドウを指定できます。

それで:

function close_window() {
  if (confirm("Close Window?")) {
    close();
  }
}

HTMLの場合:

<a href="javascript:close_window();">close</a>

また:

<a href="#" onclick="close_window();return false;">close</a>

ここでfalseを返すと、イベントのデフォルトの動作を防ぐことができます。それ以外の場合、ブラウザはそのURLに移動しようとします(明らかにそうではありません)。

これで、 window.confirm()ダイアログボックスのオプションが[OK]と[キャンセル]になります([はい]と[いいえ]ではありません)。はいといいえが本当に必要な場合は、ある種のモーダルJavascriptダイアログボックスを作成する必要があります。

:上記とはブラウザ固有の違いがあります。(window.open()を介して)Javascriptでウィンドウを開いた場合は、javascriptでウィンドウを閉じることができます。Firefoxでは、他のウィンドウを閉じることはできません。IEはユーザーに確認を求めてくると思います。他のブラウザは異なる場合があります。

于 2013-03-06T19:55:22.257 に答える
0

複数のタブがある場合は、タブを変更するとコードが起動します。マークアップのタグ宣言にrunat="server"が含まれていますか?

于 2013-03-06T19:56:52.877 に答える