Fastdesign
سه شنبه 19 دی 1391, 14:07 عصر
با سلام خدمت دوستان
توضیح کلی : تو برنامه دو تا فرم دارم . تو فرم اول یک گرید دارم . و از طریق فرم دوم اطلاعات رو به جدول اضافه می کنم .
کد اضافه کردن رکورد از فرم دوم و نمایش آن در گرید فرم اول :
con.Open();
string s = "insert into basij(Gender,F_name,L_name)values('"+comboBox1.Text+"','"+textBox1.Text+"','"+textBox2.Text+"')";
OleDbCommand addq = new OleDbCommand(s,con);//برای اجرای دستوارت SQL
addq.ExecuteNonQuery();
ds.Clear();
da.Fill(ds,"Basij");
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "basij";
con.Close();
this.Close();
هدف : حالا می خوام با انتخاب رکورد (از گرید) در فرم اول و با کلیک باتن مربوطه رکورد انتخابی رو در فرم دوم نمایش بدم .
کد :
Form2 f2 = new Form2();
int pos = bs.CurrencyManager.Position;
cmd.CommandText = "Select * from basij";
cmd.Connection = con;
da.SelectCommand = cmd;
ds.Clear();
da.Fill(ds, "Basij");
pos = bs.CurrencyManager.Position;//روی رکورد جاری که هستیم
f2.bs = bs;
f2.comboBox1.Text = ds.Tables["Basij"].Rows[pos]["Gender"].ToString();
f2.textBox1.Text = ds.Tables["Basij"].Rows[pos]["F_name"].ToString();
f2.Show();
f2.comboBox1.Focus();
و اما مشکل این این کد : تا زمانی که رکورد جدید رو اضافه نکردم هر رکوردی رو از گرید انتخاب کنم در فرم دوم برام نمایش میده ! ولی اگه یک رکورد رو اضافه کنم و از گرید یک رکورد رو انتخاب کنم برمیگرده رکورد اول رو برام نمایش میده .
با تشکر
توضیح کلی : تو برنامه دو تا فرم دارم . تو فرم اول یک گرید دارم . و از طریق فرم دوم اطلاعات رو به جدول اضافه می کنم .
کد اضافه کردن رکورد از فرم دوم و نمایش آن در گرید فرم اول :
con.Open();
string s = "insert into basij(Gender,F_name,L_name)values('"+comboBox1.Text+"','"+textBox1.Text+"','"+textBox2.Text+"')";
OleDbCommand addq = new OleDbCommand(s,con);//برای اجرای دستوارت SQL
addq.ExecuteNonQuery();
ds.Clear();
da.Fill(ds,"Basij");
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "basij";
con.Close();
this.Close();
هدف : حالا می خوام با انتخاب رکورد (از گرید) در فرم اول و با کلیک باتن مربوطه رکورد انتخابی رو در فرم دوم نمایش بدم .
کد :
Form2 f2 = new Form2();
int pos = bs.CurrencyManager.Position;
cmd.CommandText = "Select * from basij";
cmd.Connection = con;
da.SelectCommand = cmd;
ds.Clear();
da.Fill(ds, "Basij");
pos = bs.CurrencyManager.Position;//روی رکورد جاری که هستیم
f2.bs = bs;
f2.comboBox1.Text = ds.Tables["Basij"].Rows[pos]["Gender"].ToString();
f2.textBox1.Text = ds.Tables["Basij"].Rows[pos]["F_name"].ToString();
f2.Show();
f2.comboBox1.Focus();
و اما مشکل این این کد : تا زمانی که رکورد جدید رو اضافه نکردم هر رکوردی رو از گرید انتخاب کنم در فرم دوم برام نمایش میده ! ولی اگه یک رکورد رو اضافه کنم و از گرید یک رکورد رو انتخاب کنم برمیگرده رکورد اول رو برام نمایش میده .
با تشکر