Update DataGrid when update DataTable
با سلام
من در فرم اول یه دونه گرید ویو دارم وقتی روش کلیک میکنم به فرم دوم میره ؛ حالا اونجا با توجه به شرایط عمل آپدیت حذف و یا اینسرت انجام میشه و اطلاعات گرید به روز میشه
<code>//dataGridView ra por mikonad
dataGridView.DataSource = book.GetFilledDataSource();
</code>
کد:
public DataTable GetFilledDataSource()
{
return GetFilledDataSource(BookFilterBy.BookCode, null);
}
public DataTable GetFilledDataSource(BookFilterBy FilterField, object Value)
{
Connection DBConnection = new Connection();
DataTable DataSource = new DataTable();
string strCommand;
strCommand = "SELECT BookCode,Name,Author,Publisher,ISBN FROM Books";
if (Value != null)
{
strCommand += " WHERE ";
switch (FilterField)
{
case BookFilterBy.BookCode:
strCommand += "BookCode = " + Value.ToString();
break;
case BookFilterBy.Name:
strCommand += "Name Like '%" + Value.ToString() + "%'";
break;
case BookFilterBy.Author:
strCommand += "Author Like '%" + Value.ToString() + "%'";
break;
case BookFilterBy.Publisher:
strCommand += "Publisher Like '%" + Value.ToString() + "%'";
break;
case BookFilterBy.ISBN:
strCommand += "ISBN Like '%" + Value.ToString() + "%'";
break;
}
}
if (DBConnection.Connect())
{
DataSource = DBConnection.Fill(strCommand);
message = ".ليست گيري انجام گرديد";
doneSafeLastOp = true;
}
else
{
message = DBConnection.Message;
doneSafeLastOp = false;
}
DBConnection.Disconnect();
return DataSource;
}
}
در کد بالا تمام جدول رو در دیتا گرید لود میکنه
حالا سوال من اینه که چه جوری میشه بعد از عمل مثلا آپدیت در پایگاه داده تنها سطر مورد نظر در گرید آپدیت شود
در ضمن من نمیخوام ازBindingSource ی که در تولبار هست استفاده کنم (یا بهتر بگم نمیخوانم از اشیایی که روی فرم دستورات پایگاه داده رو مینویسند استفاده کنم) و میخوام به صورت مستقیم تنها رکوردی که در پایگاه داده تغییر میکنه مستقیم در گرید تغییر بدم
vs 2008 , Windows Application