PDA

View Full Version : بروز رسانی datagridview



nazanin0
چهارشنبه 07 مهر 1389, 17:01 عصر
سلام
من یک فرم در vb.net دارم که یک datagridview دارد و به بانک هم اتصال دادم کار هم می کنه اما بعد از اینکه داده هایی رو به جدول اضافه کردم دیگه اطلاعات جدید رو توی datagridview نشون نمی ده لطفاً راهنمایی کنید.

Sk1900n3
چهارشنبه 07 مهر 1389, 17:24 عصر
دوست عزیز با سلام
اکثر برنامه هایی که برنامه نویسان متوسط و یا حرفه ای دات نت مینویسن اتصال به گرید و یا یک textbox ساده رو با کد نویسی انجام میدن
خیلی راحته و با یک خط فراخوانی گرید و جدول شما بروز رسانی میشه

من این کد رو واستون میزارم (C#,Vb.net)

C#.net



public void FunView_Fill(string Parametr, string Table)
{ SqlConnection Con = new SqlConnection(@"server=.\SqlExpress;database=dbEngine;integrated Security=true");

SqlDataAdapter Adp = new SqlDataAdapter(Parametr, Con);
DataSet DSet = new DataSet();

Adp.Fill(DSet, Table);
DataView DView = new DataView(DSet.Tables[Table]);
CurrencyManager CrManager;
CrManager = (CurrencyManager)(this.BindingContext[DView]);
//-- -- Clear

اتصال یک lable به یک فیلد (مثلا id)

this.lable1.DataBindings.Clear();
//-- -- Add
this.lable1.DataBindings.Add("text", DView, "id");
// ---------------- Gridview

اتصال به گرید (و به طور مثال تغییر تنظیمات ستون id)

this.dataGridview1.DataSource = DView;

this.dataGrd.Columns["id"].HeaderText = "id student";

}


این تابع 2 (جدول و پارامتر (دستور اس کیو ال))پارمتر میگیره و در لود فرم نوشته میشه

FunView_Fill("select id from tb", "tb");

حالا هرموقع رکوردی ثبت و یا ویرایش شد فقط کافیست این خط بالا رو بنویسین


:خجالت::خجالت:


اینم تابع به زبان vb.net

mmd2009
چهارشنبه 07 مهر 1389, 19:04 عصر
با سلام

شما کافیه بعد از اینکه اطلاعاتتون رو ویرایش کردید رویدادی که با اون اطالاعات بانک رو نمایش دادید تو گرید ویو دوباره فراخوانیش کنید مثل زیر :

اگر تو form_load بود :



// ابتدا کدهایی که داده ها رو دستکاری می کنند

// فراخوانی رویداد مورد نظر

Form1_Load(sender, e)

shoeyb1990
پنج شنبه 08 مهر 1389, 01:23 صبح
اگه میخواید بعد از اضافه به بانک تو دیتا گرید هم نمایش بده این کد رو ببین دو خط اخر این کار رو میکنه.

Ad = New OleDb.OleDbDataAdapter("select * from tbl1", con)
Dim ds As New DataSet
Ad.Fill(ds, "tbl1")
Dim r As DataRow = ds.Tables("tbl1").NewRow
r(1) = TextBox1.Text.Trim
r(2) = TextBox2.Text.Trim
r(0) = TextBox3.Text.Trim
r(3) = TextBox4.Text.Trim
r(4) = TextBox5.Text.Trim
ds.Tables("tbl1").Rows.Add(r)
Dim cmd As New OleDb.OleDbCommandBuilder(Ad)
Ad.Update(ds, "tbl1")
DataGridView1.DataSource = ds
DataGridView1.DataMember = "tbl1"

ali_najari
پنج شنبه 08 مهر 1389, 09:45 صبح
اگه اطلاعات به ديتاگريد Binding شده فقط كافيه كه Update رو اجرا كني براي Datagrid



DataGridView1.Update