ostovarit
یک شنبه 20 تیر 1389, 21:59 عصر
برای جلوگیری از ورود اطلاعات تکراری در گرید ویو و جلوگیری از خالی گذاشتن یکی از ستونها چه باید کرد ؟؟؟
کاربر اطلاعات را در گرید ویرایش میکند و گرید را Update میکند میخواهم قبل از Update و در زمان ویرایش اطلاعات را بررسی کنم تا تکراری نباید و کاربر سلول را خالی رها نکند لطفا چند راه پیشنهاد بدید من از کد زیر استفاده میکنم اما به دلیل باگ در گرید به مشکل بر میخوارم و ارور میدهد ارور را که سرچ کردم متوجه شدم که در گرید باگی وجود دارد که این روش عملی نیست:
private void dataGridViewSpesific1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 1)
{
SqlCommand cmdCheck = new SqlCommand();
cmdCheck.Connection = new myConnection().Cnn;
cmdCheck.CommandText = "select * from RegGoods where Code=@Code";
cmdCheck.Parameters.AddWithValue("@Code", dataGridViewSpesific1[1, e.RowIndex].Value.ToString());
SqlDataReader drch = cmdCheck.ExecuteReader();
drch.Read();
if (drch.HasRows)
{
FarsiMessage.Show("کد کالا قبلا به ثبت رسیده است.", "خطا", FarsiMessageBoxButtons.OK, FarsiMessageBoxIcons.Error);
this.BindGrid();
}
if (dataGridViewSpesific1[1, e.RowIndex].Value.ToString() == "")
{
FarsiMessage.Show("کد کالا معتبر نمی باشد.", "خطا", FarsiMessageBoxButtons.OK, FarsiMessageBoxIcons.Error);
this.BindGrid();
}
}
}
دنبال راه حلی به جز ایونت CellEndEdit هستم؟
کاربر اطلاعات را در گرید ویرایش میکند و گرید را Update میکند میخواهم قبل از Update و در زمان ویرایش اطلاعات را بررسی کنم تا تکراری نباید و کاربر سلول را خالی رها نکند لطفا چند راه پیشنهاد بدید من از کد زیر استفاده میکنم اما به دلیل باگ در گرید به مشکل بر میخوارم و ارور میدهد ارور را که سرچ کردم متوجه شدم که در گرید باگی وجود دارد که این روش عملی نیست:
private void dataGridViewSpesific1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 1)
{
SqlCommand cmdCheck = new SqlCommand();
cmdCheck.Connection = new myConnection().Cnn;
cmdCheck.CommandText = "select * from RegGoods where Code=@Code";
cmdCheck.Parameters.AddWithValue("@Code", dataGridViewSpesific1[1, e.RowIndex].Value.ToString());
SqlDataReader drch = cmdCheck.ExecuteReader();
drch.Read();
if (drch.HasRows)
{
FarsiMessage.Show("کد کالا قبلا به ثبت رسیده است.", "خطا", FarsiMessageBoxButtons.OK, FarsiMessageBoxIcons.Error);
this.BindGrid();
}
if (dataGridViewSpesific1[1, e.RowIndex].Value.ToString() == "")
{
FarsiMessage.Show("کد کالا معتبر نمی باشد.", "خطا", FarsiMessageBoxButtons.OK, FarsiMessageBoxIcons.Error);
this.BindGrid();
}
}
}
دنبال راه حلی به جز ایونت CellEndEdit هستم؟