使用数据 table 防止 gridcontrol devexpress 中的重复值
Prevent duplicate value in gridcontrol devexpress using data table
填写 txtName
、txtAddress
并按 btnSubmit
将为 GridControl
DevExpress 添加价值。
这是代码:
DataTable dt;
private void XtraForm1_Load(object sender, EventArgs e)
{
dt = new DataTable();
DataColumn dc1 = new DataColumn("NAME");
DataColumn dc2 = new DataColumn("ADDRESS");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
DataRow dr1 = dt.NewRow();
gridControl1.DataSource = dt;
}
private void btnSubmit_Click(object sender, EventArgs e)
{
DataRow dr1 = dt.NewRow();
dr1[0] = txtName.Text;
dr1[1] = txtAddress.Text;
dt.Rows.Add(dr1);
gridControl1.DataSource = dt;
}
上面的代码工作正常。
当数据存在于 GridControl
中时,如何防止重复值?我想要在按下 btnSubmit
后显示重复值的警报/消息框。
您可以使用 DataTable.Select
方法查找 DataTable
中存在的行。如果没有行,那么你可以添加新行,否则你可以显示消息。
这是示例:
private void btnSubmit_Click(object sender, EventArgs e)
{
string name = txtName.Text;
string address = txtAddress.Text;
var rows = dt.Select(string.Format("NAME = '{0}' AND ADDRESS = '{1}'", name, address));
if (rows.Length == 0)
{
DataRow dr1 = dt.NewRow();
dr1[0] = name;
dr1[1] = address;
dt.Rows.Add(dr1);
}
else
MessageBox.Show("Some message.");
}
填写 txtName
、txtAddress
并按 btnSubmit
将为 GridControl
DevExpress 添加价值。
这是代码:
DataTable dt;
private void XtraForm1_Load(object sender, EventArgs e)
{
dt = new DataTable();
DataColumn dc1 = new DataColumn("NAME");
DataColumn dc2 = new DataColumn("ADDRESS");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
DataRow dr1 = dt.NewRow();
gridControl1.DataSource = dt;
}
private void btnSubmit_Click(object sender, EventArgs e)
{
DataRow dr1 = dt.NewRow();
dr1[0] = txtName.Text;
dr1[1] = txtAddress.Text;
dt.Rows.Add(dr1);
gridControl1.DataSource = dt;
}
上面的代码工作正常。
当数据存在于 GridControl
中时,如何防止重复值?我想要在按下 btnSubmit
后显示重复值的警报/消息框。
您可以使用 DataTable.Select
方法查找 DataTable
中存在的行。如果没有行,那么你可以添加新行,否则你可以显示消息。
这是示例:
private void btnSubmit_Click(object sender, EventArgs e)
{
string name = txtName.Text;
string address = txtAddress.Text;
var rows = dt.Select(string.Format("NAME = '{0}' AND ADDRESS = '{1}'", name, address));
if (rows.Length == 0)
{
DataRow dr1 = dt.NewRow();
dr1[0] = name;
dr1[1] = address;
dt.Rows.Add(dr1);
}
else
MessageBox.Show("Some message.");
}