1

私は RadGridView を持っています。ユーザーが5列目に「c」または「d」以外の文字、数字、または文字を書き込めないようにしたいと考えています。以下のコードを試してみましたが、うまくいきませんでした...

private void radGridView1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (radGridView1.CurrentColumn.Index == 4)
    {
        if (e.KeyChar != 'c' || e.KeyChar != 'd' )
             e.Handled = true;
    }
}
4

1 に答える 1

4

ユーザーに警告したり、検証エラーを追加したりするなど、さらに何かをしたい場合は、次のコードスニペットを使用してください。

     private void radGridView1_CellValidating(object sender, CellValidatingEventArgs e)
     {
        String[] Acceptable = new string[] {"c", "d"};

        if (e.Value != null && e.ColumnIndex == 4)
        {
            if(e.Value != e.OldValue)
            {
                if (!Acceptable.Contains(e.Value))
                {
                    e.Cancel = true;
                }
            }
        }
    }
于 2012-11-25T07:09:46.143 に答える