PDA

View Full Version : به روز رسانی مستقیم datagirdview بعد از تغییرات



mehdiba3
یک شنبه 06 مرداد 1392, 19:57 عصر
سلام

یک فرم ورود اطلاعات دارم که عملیات درج حذف و به هنگام سازی رو انجام میده.

تو همین فرم یک datagirdview دارم که وقتی فرم لود میشه اطلاعات رو از بانک میگیره و نشون میده.
من بعد از هر بار عملیات برای مثال درج فرم رو می ببندم و دوباره باز می با دستور this.Close();
name_crs aa = new name_crs();
aa.Show();
اینطوری datagirdview اپدیت میشه ولی میدونم راهی دیگه باید باشه که فرم باز و بسته نشه و اطلاعات به روز بشن. اگه میشه راهنمایی کنید چه راهای وجود داره وقتی رو دکمه درج کلیک میکنکم و اطلاعات درج میشه datagirdview مستقیم بهم اطلاعات رو نشون بده.
مرسی


string str =
"insert into definitioncelass(tname,tno,gname,cname,pname,tedad jalesat) values(@tname,@tno,@gname,@cname,@pname,@tedadjale sat)";

SqlConnection a = new SqlConnection("data source=.; initial catalog=academy;integrated security=true");

a.Open();
SqlCommand b = new SqlCommand();
b.Connection = a;
b.CommandText = str;

b.Parameters.AddWithValue("@tname", comboterm.Text);
b.Parameters.AddWithValue("@tno", txtcodterm.Text);

b.Parameters.AddWithValue("@gname", combogroupcrs.Text);
b.Parameters.AddWithValue("@cname", combocrs.Text);
b.Parameters.AddWithValue("@pname", comboprof.Text);
b.Parameters.AddWithValue("@tedadjalesat",txttedadjalesast.Text);
b.ExecuteNonQuery();
a.Close();

MessageBox.Show("ثبت شد");

this.Close();
define_class aa=new define_class();
aa.Show();

hosseinbarnamenevis
یک شنبه 06 مرداد 1392, 20:19 عصر
خب کاری نداره که
شما بجای این کار کدهایی که تویه فرم لود گذاشتین رو داخل فرو اکتیو و فرم دی اکتیو هم بزارین
یا حتی میتونین داخل یه متد بزارین و اونو صدا بزنین

mehdiba3
یک شنبه 06 مرداد 1392, 23:39 عصر
با کمک دوست امیر که از بچه های همیمنجاست تونستیم درستش کنیم ولی به پیشنهاد امیر جان اگه یگ متد برا نمایش دیتاگرید بنویسیم و در دکمه درج ،حذف و .... متد را صدا بزنیم مشکل حل میشه.
اینم کدش

private void datagird()
{
string strdatagridview = "select * from t";
var da = new SqlDataAdapter(strdatagridview, a);
var ds = new DataSet();
da.Fill(ds, "mytable");
dataGridView1.DataSource = ds.Tables["mytable"];
dataGridView1.Columns[0].HeaderText = "نام";
}

private void button1_Click(object sender, EventArgs e)
{
String str = "insert into t(name) values(@name)";

a.Open();
SqlCommand b = new SqlCommand();
b.Connection = a;
b.CommandText = str;
b.Parameters.AddWithValue("@name", textBox1.Text);

b.ExecuteNonQuery();
a.Close();

datagird();