根据内容长度

时间:2017-02-07 17:07:41

标签: c# .net winforms visual-studio visual-studio-2015

我有一个WinForm,里面有一个简单的WebBrowser控件。我希望Form应该根据WebBrowser内容的长度自动调整大小。如果内容很小,表单应该缩小,如果内容很大,它应该会增长。

以下是我采取的步骤:

  1. 我有一个简单的表单,其中有一个WebBrowser控件。
  2. 将WebBrowser停靠在Form Control上。
  3. 设置Form的属性如下:

    • AutoSize:True
    • AutoSizeMode:GrowAndShrink
    • FormBorderStyle:FixedDialog
    • MaximizeBox:False
  4. 但仍然没有用!

    通过这样做,表单的内容完全消失。

    有没有解决方案?

1 个答案:

答案 0 :(得分:1)

如果我将表单上的AutoSize属性设置为false并且在webbrowser控件的DocumentCompleted事件中使用以下代码,并且WPF Example from Reza Aghaei受到启发,那么我只能稍微开始工作

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    this.ClientSize = new Size(
            browser.Document.Body.Parent.ScrollRectangle.Width,
            browser.Document.Body.Parent.ScrollRectangle.Height);    
}