有没有办法在 WPF 的 DataGridTextBoxColumn 中设置最大长度?我找不到这个属性,我能想到的唯一方法是使用 DataGridTemplateColumn。
但是,当我这样做时,我在尝试编辑时遇到了一些其他问题。我希望有相同的行为:文本被选中,我可以开始输入正确的方式,这不是我现在得到的。
谢谢
我知道这个有点旧,但我在回答类似问题之前就达到了,所以仅供参考。
您可以使用EditingElementStyle
可以定位TextBox
单元格内部的属性。
<DataGridTextColumn>
<DataGridTextColumn.EditingElementStyle>
<Style TargetType="TextBox">
<Setter Property="MaxLength" Value="10"/>
</Style>
</DataGridTextColumn.EditingElementStyle>
</DataGridTextColumn>
如果您在多个地方都有此样式,则可以将此样式移动到公共资源或单独的文件中,然后从那里使用它。在这种情况下,您需要类似:
风格资源:
<Style TargetType="{x:Type TextBox}" x:Key="TextBoxWithMaxLength" >
<Setter Property="MaxLength" Value="10"/>
</Style>
XAML:
<DataGridTextColumn EditingElementStyle="{StaticResource TextBoxWithMaxLength}"/>