PDA

View Full Version : سوال: update datagridview



saeed razaee
سه شنبه 21 تیر 1390, 16:46 عصر
سلام
من روی فرم چند تکس باکس دارم و چند باتن که داده ها را درون دیتابیس اضافه می کند و یک datagride view روی فم دارم که داده ها را نمایش می دهد اما بعد از هر دفعه اضافه شدن یک سطر باید فرم را ببندم و دوباره باز کنم تا datagride view تغییرات را نمایش دهد. این مشکل را با ویرایش و حذف هم دارم.چطور می توانم بدون اینکه از فرم خارج شوم datagride view به روز رسانی شود.

ronin87
سه شنبه 21 تیر 1390, 17:00 عصر
سلام
من روی فرم چند تکس باکس دارم و چند باتن که داده ها را درون دیتابیس اضافه می کند و یک datagride view روی فم دارم که داده ها را نمایش می دهد اما بعد از هر دفعه اضافه شدن یک سطر باید فرم را ببندم و دوباره باز کنم تا datagride view تغییرات را نمایش دهد. این مشکل را با ویرایش و حذف هم دارم.چطور می توانم بدون اینکه از فرم خارج شوم datagride view به روز رسانی شود.

سلام دوست عزیز
میتونی یک متد تعریف کنی که datagrid را با استفاده از data adapter پر میکنه بنویسی،بعد متد در button مورد نظر صدا کنی،البته قبلش Dataset را باید خالی کنی.اگر خواستی بگو نمونه کد را برات بذارم

hjran abdpor
سه شنبه 21 تیر 1390, 17:07 عصر
با سلام.
یه تابع تعریف کن که فقط دادها را به گربدویو ااحاق کنه ونمایش بده ف بعد در اخر هر کاری(insert , delete , ....)
تابع را صدا بزن.............

این هم مثال با کد :

void display()
{
OleDbConnection con = new OleDbConnection();
con.ConnectionString = "provider=microsoft.jet.oledb.4.0; data source=d:main.mdb";
OleDbDataAdapter da = new OleDbDataAdapter("select * from std", con);
DataSet ds = new DataSet();
con.Open();
da.Fill(ds, "std");
GridView1.DataSource = ds.Tables["std"].DefaultView;
GridView1.DataBind();
con.Close();
}

hjran abdpor
سه شنبه 21 تیر 1390, 17:12 عصر
امان از بی هواسی.........

در این کد بعد از update شدن تابع فراخوانی میشود ودادها داخل گریدویو تغییر میکنند.


OleDbConnection con = new OleDbConnection();
con.ConnectionString = "provider=microsoft.jet.oledb.4.0; data source=d:main.mdb";
OleDbCommand com = new OleDbCommand();
com.Parameters.Add("@name", OleDbType.Char, 10);
com.Parameters.Add("@family", OleDbType.Char, 10);
com.Parameters.Add("@num", OleDbType.Integer );
com.Parameters["@name"].Value = TextBox3.Text;
com.Parameters["@family"].Value = TextBox2.Text;
com.Parameters["@num"].Value = TextBox4.Text;
com.CommandText = "update std set name=@name,family=@family,num=@num where std_num='"+TextBox1.Text+"'";
com.Connection = con;
con.Open();
com.ExecuteNonQuery();
con.Close();
display();
TextBox1.Text = "";
TextBox2.Text = "";
TextBox3.Text = "";
TextBox4.Text = "";

esh_computer110
سه شنبه 21 تیر 1390, 21:10 عصر
فقط باید دیتاگرید ویو را بروز رسانی کنید و تمام
تشکر یاتون نره