1

フォームに WebBrowser コントロールがあります。

ユーザーがリンク(mailtoのhref)をクリックすると、ボタンがクリックされたWebサイトに登録されますが、新しいウィンドウは開きません(Outlookも他のWebサイトもありません)。

このコードを見つけましたが、動作しません:

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    TextReader tr = File.OpenText(webBrowser1.Url.ToString());
    string  htmlFile = tr.ReadToEnd();
    tr.Close();
    tr.Dispose();

    if (htmlFile.Contains("mailto:"))
    {
        htmlFile = htmlFile.Replace("mailto:", @"mail");

        //Recreate new file with fixed html
        File.Delete(e.Url.LocalPath);
        TextWriter tw = File.CreateText(e.Url.LocalPath);
        tw.Write(htmlFile);
        tw.Flush();
        tw.Close();
        tw.Dispose();

        Refresh();
    }
}

もっと簡単な方法があれば、答えはこのコードを修正する方法である必要はありませんか? いずれ良くなるだろう。

4

1 に答える 1