就在最近,我使用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
答案 0 :(得分:0)
问题是SCROLLBARS及其可见性。
在:
VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Visible"
后:
VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Auto"
由于某种原因,这修复了它。