webBrowser1.Navigate("url") 屬於程式化導航,瀏覽器歷史記錄、Referer 標頭、目標屬性(`target="_blank"`)處理均與用戶真實點擊不同。
HtmlElement link = webBrowser1.Document.GetElementById("linkId");
if (link != null) link.InvokeMember("click");
webBrowser1.Document.InvokeScript("eval", new object[] { "document.getElementById('linkId').click();" });
SendMessage 發送 WM_LBUTTONDOWN/UP 到 WebBrowser 句柄,需計算元素屏幕座標,複雜度高,不推薦常規使用。「把鏈接作為變量再 Navigate」本質仍是程式化導航,無法觸發 `target="_blank"` 新窗口行為,也無法攜帶完整的 Referer 與用戶交互上下文。
Navigate 最簡潔。