所以我有一个神秘的问题,在我将SpellCheck.IsEnabled
添加到我的一个控件之后,承载此控件的表单需要花费3秒才能加载。删除拼写检查属性,表格立即加载。
仅供参考,以下是表格中唯一更改的地方:
<TextBox TextWrapping="Wrap" Height="100"
Text="{Binding ActivePostMetadata.Abstract}" SpellCheck.IsEnabled="True"
IsEnabled="{Binding IsAbstractVisible}"
/>
使用SpellCheck.IsEnabled="True"
表单的InitializeLayout需要大约3秒,没有它,初始化是即时的。
让事情更奇怪:它只发生在我的开发机器上。在另一台机器上运行已编译的应用程序时,表单立即弹出没有问题。
我怀疑它与查找词典的Windows问题有关,但我不知道在哪里看。
有什么想法可以在这里发生什么?
答案 0 :(得分:1)
好的,经过一番研究后,问题似乎是由于此处注册了许多临时字典文件:
HKCU\SOFTWARE\Microsoft\Spelling\Dictionaries
我在tmpFiles
注册了大约20个词典,其中很多都不存在。 tmpFiles中有很多文件,可能文件查找以及实际可用的2或3个字典导致速度变慢。不知道那里有什么转储临时词典,但我从列表中删除了所有临时文件(在我的情况下只留下Word词典),现在表单再次快速加载。
有关字典信息来自哪里以及最终让我发现这些内容的更多信息来自:
https://msdn.microsoft.com/en-us/library/windows/desktop/hh869748(v=vs.85).aspx