เช็คข้อมูลใน Dgv ว่ามีค่าซ้ำหรือไม่ก่อนจะบันทึกข้อมูล ในตัวอย่างเช็ค TruckNo กับ ProvinceCode
ArrayList arrDup = new ArrayList(); ArrayList arrTruckNo = new ArrayList(); string strCode; int intCnt = 0; foreach (DataGridViewRow dgr in this.dgvMaster.Rows) { if (dgr.Cells["TruckNo"].Value == DBNull.Value || dgr.Cells["ProvinceCode"].Value == DBNull.Value) { intCnt++; if (sb.Length == 0) { sb.Append(""); } else { sb.Append(string.Format(",{0} ",intCnt.ToString())); } } else { string SelectedText = Convert.ToString(dgr.Cells["ProvinceCode"].FormattedValue.ToString()); strCode = string.Format("{0}-{1}", dgr.Cells["TruckNo"].Value.ToString(), SelectedText); if (!arrTruckNo.Contains(strCode)) { arrTruckNo.Add(strCode); } else { arrDup.Add(strCode); } } } if (arrDup.Count > 0) { sb.AppendLine(" พบรายการ Truck + Province ซ้ำดังนี้ "); for(int i = 0 ; i < arrDup.Count ;i++ ) { if( i == 0 ) { sb.AppendLine( arrDup[i].ToString()); } else { sb.AppendLine(string.Format(",{0} ", arrDup[i].ToString())); } } } if (sb.Length > 0) { if (intCnt > 0) { sb.AppendLine(" พบรายการ TruckNo หรือ ProvinceCode ว่างอยู่ "); sb.AppendLine(intCnt + " Row"); } sb.AppendLine(" กรุณาตรวจสอบความถูกต้องของข้อมูล.."); MessageBox.Show(sb.ToString(), "Check Data", MessageBoxButtons.OK, MessageBoxIcon.Error); return false; } return true;