gpt4 book ai didi

c# - WebBrowser - 查找呈现文本的高度

转载 作者:行者123 更新时间:2023-11-30 15:12:11 25 4
gpt4 key购买 nike

我有一个需要设置特定高度的网络浏览器控件。如果用户的文本量很小,我希望 Web 浏览器短一些。如果用户键入大量文本,那么我需要网络浏览器更高一些。

如何从 WebBrowser 中找到呈现文本的高度?

我看到了这个Getting the page height from a C# web browser control但认为有更好的方法。


更新

我正在设置浏览器的文本:

webBrowser1.DocumentText = value;

设置此值后,我可以检查 webBrowser1.Document.Body 及其空值。我还可以获取文档的所有子项,但不会返回任何子项。

我是否设置了正确的属性?

最佳答案

我在 webBrowser.DocumentText 中注意到的一点是,您不一定能在设置后立即“获取”它的值。

webBrowser1.DocumentText = "Some Text";

labelHtml.Text = webBrowser1.DocumentText

这不会产生可预测的结果,因为网络浏览器控件可能还没有完成呈现文本。如果重复运行,并且“Some Text”是一个变量,您会看到“labelHtml”很快就会与浏览器控件中的内容不同步。 (“Some Text”越复杂,自然渲染的时间就越长。)

如果您使用 WebBrowser 控件的 webBrowser1_documentCompleted 事件处理程序来获取您的 DocumentText,您应该没问题。

    private void setText(string htmlText)
{
webBrowser1.DocumentText = htmlText;
}


private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
label1.Text = webBrowser1.DocumentText;
}

label1 现在将包含您提供给网络浏览器的内容...

关于c# - WebBrowser - 查找呈现文本的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1569026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com