1
人としてhelped me既定のブラウザで開かれたURLを開始する方法を今私はクリックしたときに2つの異なるタブでURLを開く原因となる少しの問題があります。これの原因は何でしょうか?私のコードは2つの異なるタブでURLを開きますが、なぜですか?
EDIT:詳細モードでListViewを使用していることを指摘しておきましょう。したがって、ユーザーがURLで列をクリックすると、ブラウザ内に単一のウィンドウが開きます。
lvWeb.MouseMove += new MouseEventHandler(lvWeb_MouseMove);
lvWeb.MouseUp +=new MouseEventHandler(lvWeb_MouseUp);
private void lvWeb_MouseMove(object sender, MouseEventArgs e)
{
var hit = lvWeb.HitTest(e.Location);
if (hit.SubItem != null && hit.SubItem == hit.Item.SubItems[1])
lvWeb.Cursor = Cursors.Hand;
else lvWeb.Cursor = Cursors.Default;
}
private void lvWeb_MouseUp(object sender, MouseEventArgs e)
{
var hit = lvWeb.HitTest(e.Location);
if (hit.SubItem != null && hit.SubItem == hit.Item.SubItems[1])
{
var url = new Uri(hit.SubItem.Text);
System.Diagnostics.Process.Start(url.ToString());
}
}
あなたは多分二回 'MouseUp'イベントハンドラを登録しましたか? – Joey
@ジョイ、いいえ、私は一度だけ持っています。 – HelpNeeder
あなたの答えは正確ではありませんが、見る価値があります:http://ryanfarley.com/blog/archive/2004/05/16/649.aspx。現在のセッションをハイジャックすることなく、デフォルトのブラウザを開く別の方法について説明します。 – robasta