在WPF中防止Datagrid中的特殊字符

时间:2017-08-05 07:12:13

标签: wpf datagrid special-characters

如何使用C#阻止WPF中datagridview中的特殊字符。是否有像KeyPress事件那样的数据网格事件。

if (!char.IsControl(e.Key))
{
    Control editingControl = (Control)sender;
    if (!Regex.IsMatch(editingControl.InputBindings + e.KeyChar, pattern))
        e.Handled = true;
}

我使用上面的代码,但是它的出现错误,对此有任何建议。

2 个答案:

答案 0 :(得分:1)

  

是否有像KeyPress事件那样的数据网格事件。

尝试PreviewTextInput事件:

<DataGrid ... PreviewTextInput="dg_PreviewTextInput">
private void dg_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
    if (!Regex.IsMatch(e.Text, pattern))
        e.Handled = true;
}

答案 1 :(得分:0)

var regex = new Regex(@"[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]");
       if (!regex.IsMatch(e.Text))
            e.Handled = true;

这对我有所帮助,谢谢mm8 ......