2017-08-29 52 views
0

WinRTXAML形式我定义了一个MaxLength还可使spellcheck-的WinRT MAXLENGTH拼写检查冲突

<TextBox 
    Text="{Binding Description, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
    IsSpellCheckEnabled="True" 
    MaxLength="255" 
    TextWrapping="Wrap" 
    IsTextPredictionEnabled ="True" 
    PlaceholderText="Description" 
    AcceptsReturn="False" 
    Foreground="Black" 
    BorderBrush="Gray" 
    FontSize="22"/> 

虽然MaxLength直接在打字的时候愉快地工作,但有一个bug。

例如,如果最后一个单词被截断,例如:由于空间不足,'学习'变为'学习',拼写检查会突出显示'studie',并允许您选择正确的拼写'学习'。

没有执行最大长度检查并且控件中文本的长度超过MaxLength。当数据呈现时间超出预期时,这不会影响后端。

我正在寻找的是一种方法来处理所有这些字段中的代码最少。我当然可以修复属性集中每个字段的视图模型,但希望找到更好的方法。

所有建议非常感谢和免费拼写检查!

回答

0

没有接受者?我无法真正看到这个答案。一些方法 -

  • 有一个TextBoxVM并使用从父虚拟机传入的属性名称和长度进行实例化。将长度传递到XAML控件的最大长度。使用长度检查数据何时设置,如果结束则截断。
  • 按照正常方式实现每个VM属性,但在VM中为maxlength文本属性包含maxlength属性,然后在设置属性时重新检查长度文本属性的长度。

底线 - 免费获得拼写检查?什么都没有免费。