2012-09-19 49 views
0

第一個問題,但我真的在一個果醬。WebPage渲染位置控制器

我有一個完美的網頁渲染。但是,我需要能夠控制初始顯示位置(幾乎像HTML中的href #anchors),但不能訪問網站內容。

從遙遠的,我可以看到我必須比其他布爾啓用/禁用滾動條進不去..

有什麼我可以做,甚至強制滾動的例如20%下降,然後我可以創建一個表單稍後調整。

任何援助將HUGELY讚賞,雖然從我所研究的,似乎不太可能。

我有常規的Windows web瀏覽器渲染

private System.Windows.Forms.WebBrowser m_webBrowser;

謝謝!

- 這是爲c#獨立應用程序..不是基於WebBased。

回答

1

你有沒有嘗試過使用jQuery?

我個人使用jquery的animate方法滾動到我的網頁中的某些元素。

例子:

$('html, body').animate({scrollTop: $('#the-element-you-want-to-scroll-to).offset().top}, 1000); 

PS:最後一個參數,你可以控制,我設法時候它會用滾動到目的地,這爲您提供一個很好的效果(以毫秒爲單位)

+0

我可以做到這一點沒有問題,如果我有權訪問網站頁面,但它來自第三方網站,所以C#應用程序將需要呈現網頁,並「自動」向下滾動到某個位置。 。這是隻與ac#有關的..可悲的是我不能把心愛的jquery帶入它! :( – Pogrindis

+0

你可以像平常一樣嘗試和渲染頁面,但是這次用javascript/jquery插入某處(在一個事件上會很不錯),儘管我在MVC中並沒有使用這個表單,而不是webforms。 – Freeman

+0

對不起,我應該說明更好..這是用於c#獨立應用程序..不是基於Web的。 – Pogrindis

0

。使用一種奇怪的方法解決它..

我基本上手動注入一些javascript到呈現的HTML ..然後其餘的很容易。

我使用的是這樣的:

  string updatedSource = WebBrowser.DocumentText.Replace("Google", "Foogle"); 
      string extraSource = 
      "<html><body>Script goes here <br/>" + 
      "<div><p>BLA BLA BLA</p></div></body></html>"; 


      WebBrowser.DocumentText = extraSource + updatedSource; 

      WebBrowser.Update(); 

也許這將幫助別人。