我正在尝试获取上传的 html 文件的宽度和高度。这就是我到目前为止所做的。
WebBrowser wb = new WebBrowser();
int ht,wd;
wb.Navigate("D:\\page1.HTM");
ht = wb.Height;
wd = wb.Width;
但是上面的代码总是返回错误的页面大小。
谁能帮我在c#环境下获取准确的页面大小?
仅供引用:对于那些将此问题标记为重复的人,请考虑原始问题(根据您的观点),网络浏览器工具是在但就我而言,我不会实现它。我只是要使用它。我希望第一行代码表明了这一点。
最佳答案
你可以试试
public partial class Form1 : Form
{
WebBrowser wb = new WebBrowser();
public Form1()
{
InitializeComponent();
wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);
wb.Navigate("D:\\page1.HTM");
}
private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
int scrollWidth = wb.Document.Body.ScrollRectangle.Width;
int scrollHeight = wb.Document.Body.ScrollRectangle.Height;
}
}
这对我来说效果很好..!
代码
wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);
用于将 DocumentCompleted
事件绑定(bind)到虚拟网络浏览器。 Form1
是一个 winform,除了虚拟 webbrowser 之外,该表单中不存在任何控件,声明为 WebBrowser wb = new WebBrowser();
DocumentCompleted 事件在文档(此处为 page1.HTM)完全加载后触发。
关于c# - 获取虚拟浏览器中的页面宽度和高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21693776/