First you create gridview contain two columns .One for letters/alphaber test and another one is number/decimal test. After two columns created , you write following code in CellValueChanged event.
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex != -1)
{
if (e.ColumnIndex == 0 && dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString().Length > 0)
{
Regex objAlphaPattern = new Regex("[*a-zA-Z]");
if (objAlphaPattern.IsMatch(dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()))
{
}
else
{
MessageBox.Show("Only Alphabet Value");
dataGridView1.Columns[e.ColumnIndex].Selected = false;
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "";
}
}
else if (e.ColumnIndex == 1 && dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString().Length > 0 )
{
decimal number;
if (Decimal.TryParse(dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(), out number)) {
}
else
{
MessageBox.Show("Only Decimal Value");
dataGridView1.Columns[e.ColumnIndex].Selected = false;
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "";
}
}
}
}
And then you can test.
Best Regard
Theingi Win