private void btnSave_Click(object sender, EventArgs e) { saveError SaveError = checkBarlen(); switch (SaveError) { case saveError.sameLength: MessageBox.Show("条码长度不能相同,否则无法识别", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case saveError.isStr: MessageBox.Show("条码长度中有字母,无法识别", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case saveError.errorSet: MessageBox.Show("条码设置中有不合理数据", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } if (SaveError != saveError.none) { return; } da.AcceptChangesDuringUpdate = false; if (da.Update((DataTable)dataGridView1.DataSource) > 0) { MessageBox.Show("条码设置保存成功", "成功"); } }
private saveError checkBarlen() { string tempStr = ","; saveError isOk = saveError.none; Regex reg = new Regex("^[0-9]*$"); for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) { string str1 = dataGridView1[1, i].Value.ToString(); string str2 = dataGridView1[2, i].Value.ToString(); string str3 = dataGridView1[3, i].Value.ToString(); if (!reg.IsMatch(str1) || !reg.IsMatch(str2) || !reg.IsMatch(str3))//字符串 { isOk = saveError.isStr; break; } int i1, i2, i3; i1 = int.Parse(str1); i2 = int.Parse(str2); i3 = int.Parse(str3); if (i1 < (i2 + i3 - 1)) { isOk = saveError.errorSet; break; } if (tempStr.IndexOf("," + str1 + ",") > 0) { isOk = saveError.sameLength; break; } else { tempStr = tempStr + str1 + ","; } } return(isOk); }