0

就在最近,我正在使用 elementhost 在 Winforms 中使用 WPF 文本框。我加载了一个包含至少 100,000 + 个字符和超过 2,000 行的大型文本文件。它打开文件并将文本正常添加到 wpf 文本框,我可以轻松地滚动文本框。当我在加载此文档时最小化程序时,程序会卡住,有时至少需要 1 分钟或更长时间才能最大化。文档或程序打开文档的方式没有任何问题我只是不明白它有什么问题。如果是这样,可能是什么问题,任何人都能够解决这个问题。

我调试了程序并且没有调试错误只是我猜的性能但是当我最小化时它加载并打开正常。

打开文件的代码:

    ''
    Dim WpfTest1 As New Sp.Tb
    Dim ElementHost1 As System.Windows.Forms.Integration.ElementHost = Me.Controls("ElementHost1")
    Dim TheTextBox As System.Windows.Controls.TextBox = CType(ElementHost1.Child, Tb).ctrl_TextBox
    ''
    Dim OFD As New OpenFileDialog
    OFD.Title = "Open"
    OFD.Filter = "Text Documents (*.txt) | *.txt|All Files |*.*"

    If OFD.ShowDialog = Windows.Forms.DialogResult.OK Then
        Using sr As New StreamReader(OFD.FileName, Encoding.Default)
            TheTextBox.Text = sr.ReadToEnd
            Var.SaveLocation = OFD.FileName
            sr.Close()
            Var.MadeChanges = False
            lbl_LastSaved.IsLink = True
        End Using
        Me.Text = System.IO.Path.GetFileNameWithoutExtension(OFD.FileName) + " - " + ProductName
        lbl_LastSaved.Text = "Last Saved " + System.IO.File.GetLastWriteTime(Var.SaveLocation).ToString("f")
        SaveRecentFile(Var.SaveLocation)
    End If
4

1 回答 1

0

问题是滚动条及其可见性。

前:

VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Visible"

后:

 VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Auto"

由于某种原因,这修复了它。

于 2014-12-16T02:55:33.950 回答