【发布时间】:2016-03-14 01:21:09
【问题描述】:
我在 WPF 中使用内置的拼写检查器。在我让用户开始升级到 Windows 10 之前,它工作得很好……我认为问题在于它被用于许多小文本框。我的应用程序显示了一个网格(Telerik 的 TreeListView),其中包含我要检查拼写的列之一的文本框。我需要能够为拼写检查器提供自定义字典;我能够做到这一点的唯一方法是订阅文本框加载事件并添加如下路径:
TextBox tb = sender as TextBox;
tb.ContextMenu = ctx_Spell;
IList dcts = SpellCheck.GetCustomDictionaries(tb);
dictsList.Add(dcts);
if (KMApplication.Settings.UserDictionary != null)
{ dcts.Add(KMApplication.Settings.UserDictionary); }
foreach (Uri dct in KMApplication.Settings.RevitDictonaries)
{ dcts.Add(dct); }
当然,这会为每个文本框调用 add,这似乎非常浪费,但它似乎工作得很好,几乎没有明显的延迟,而且只有在加载时。但是现在在 Windows 10 上,这似乎是一个荒谬的滞后。在我的 Windows 8.1 机器上,我加载了一个有几千行的文件,它会在大约 3 或 4 秒内出现;在我的 Windows 10 机器上,它会在大约 10-15 分钟内出现。如果我注释掉上述代码的自定义字典部分,它在任何一台机器上都会恢复到大约 3-4 秒。
有人知道更好的方法吗?或者如果在 Win10 中有一些解决方法?
【问题讨论】:
标签: c# wpf textbox windows-10 spell-checking