لود مجدد آیتم های درون دیتاگریدویو
با سلام
توی WinFrom یک dataGridView دارم که اطلاعات یک جدول خاص را نشون میده.
یک TextBox و Button هم توی این صفحه قرار دادم که با کلیک بر روی کلید Text وارد شده در TextBox را به همان جدول اضافه کند.
حالا می خوام بعد از Insert شدن محتوای جدید به جدول dateGridView هم آپدیت بشه و آیتم جدید را نشون بده. ولی توی این کار ناموفق بودم
این را هم تست کردم که جواب نگرفتم: dataGridView1.DataSource = XXXBindingSource;
نقل قول:
این نکته را هم میدونم که میشه توی همون دیتاگریدویو داده جدید را افزود ولی میخوام از روش خودم استفاده کنم.
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
بعد از اضافه کردن رکورد کافیه یه جستجو بزنی و آخرین رکورد رو از جدول واکشی کنی و نمایش بدی
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
دوست عزیز سرچ کن یه نمونه پروژهای پایگاه داده دانلود کن و کدهاش رو ببین
این متد رو اصلاح کن و بعد از درج در دیتابیس صداش کن
public DataSet LoadAll()
{
cmd.CommandText = "select * from اسم جدول";
cmd.Connection = con;
da.SelectCommand = cmd;
con.Open();
da.Fill(ds, "اسم جدول");
con.Close();
cmd.Parameters.Clear();
return ds;
}
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
نمی تونم از همون دیتاسورس قبلی استفاده کنم؟
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
خب دستور سرچ رو واسه کل جدول بنویس
select * from table
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
نقل قول:
نوشته شده توسط
ehsan957
نمی تونم از همون دیتاسورس قبلی استفاده کنم؟
کدت رو بذار
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
private void button1_Click(object sender, EventArgs e)
{
int rowAffected = 0;
String connString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirecto ry|\\bank.mdf;Integrated Security=True;User Instance=True";
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand();
String cmdText = "insert into mytable (mycol) values(@n)";
cmd.CommandText = cmdText;
cmd.Parameters.AddWithValue("@n", textBox4.Text);
cmd.Connection = conn;
conn.Open();
rowAffected = cmd.ExecuteNonQuery();
conn.Close();
if (rowAffected > 0)
{
dataGridView1.DataSource = XXXBindingSource;
textBox4.Text = " ";
}
else
{
MessageBox.Show("خطا");
}
}
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
سلام
این امکان وجود نداره که شما از همون Datasource قبلی استفاده کنی به این علت که داده های این Datasource به روز نیست و دارای داده های قبلی است
پس بهتره یک متد برای این کار همون طور که دوستان گفتند بنویس و Datasource را به روز کن
موفق باشی
نقل قول: لود مجدد آیتم های درون دیتاگریدویو
جواب را پیدا کردم و برای استفاده بقیه میذارم اینجا:
this.XXXTableAdapter.FillBy(this.bankDataSet10.XXX );