نمایش نتایج 1 تا 16 از 16

نام تاپیک: مشکل با رفرش شدن مجدد datagrid

  1. #1
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    کرج
    پست
    99

    مشکل با رفرش شدن مجدد datagrid

    سلام دوستان
    من تو گریددیو یک سطر رو ویرایش می کنم بعد برای اعمال تغییرات مجبورم تابع لود شدن از بانک رو مجدد قراخانی کنم که این هم دیر لود میشه و هم اینکه کدوم سطر ویرایش شد معلوم نمیشه
    چی کار کنم که پس از اعمال تغییرات همون سطر مجدد انتخاب بشه و ...
    و یا اصلأ راه اصولیش چیه ؟
    اگه میشه کمک کنید
    ممنون

  2. #2
    کاربر دائمی آواتار parvizwpf
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    TEH
    پست
    2,919

    نقل قول: مشکل با رفرش شدن مجدد گرید

    مگه چقدر دیتا دارید هر سری لود میکنید؟

  3. #3
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    کرج
    پست
    99

    نقل قول: مشکل با رفرش شدن مجدد گرید

    چیزی حدود 1000 تا رکورد
    اونم از بانک روی شبکع

  4. #4
    کاربر دائمی آواتار parvizwpf
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    TEH
    پست
    2,919

    نقل قول: مشکل با رفرش شدن مجدد گرید

    شما احتمالا نمیتونید بگید فقط یه رکورد رو در گرید رفرش کنه. یعنی شما یکجا 1000 رکورد به گرید میریزد. خب صفحه بندی کنید.

  5. #5
    کاربر دائمی آواتار امیر مهرشاد
    تاریخ عضویت
    آذر 1390
    محل زندگی
    بجنورد (پاریس کوچولو)
    پست
    686

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    ایندکس گزاری کارتون رو سریعتر میکنه یا اگر نمیخواهید بقول دوستمون تعداد مشخصی را لود نمایید یا در پشت پرده دیتاستتون رو رفرش کنید یا .....

    شما با id هر رکوردی که تغیر میدید دسترسی به رکورد تغیر داده شده دارید بر همون اساس یه سلکتی بگیرید یا اون row در گریدتون رو انتخاب نمایید

  6. #6
    کاربر دائمی آواتار juza66
    تاریخ عضویت
    دی 1389
    محل زندگی
    هفت تپه - 7hill
    پست
    798

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    سلام

    آقای امیر مهرشاد میشه بگید چطوری؟! کدی دارید در اختیارمون بذارید یا راهنمایی بفرمایین؟!

    تشکر

  7. #7
    کاربر دائمی آواتار امیر مهرشاد
    تاریخ عضویت
    آذر 1390
    محل زندگی
    بجنورد (پاریس کوچولو)
    پست
    686

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    نقل قول نوشته شده توسط juza66 مشاهده تاپیک
    سلام

    آقای امیر مهرشاد میشه بگید چطوری؟! کدی دارید در اختیارمون بذارید یا راهنمایی بفرمایین؟!

    تشکر
    111.jpg
    اینم فایل آموزشیش

  8. #8

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    دوست عزیز شما وقتی رکورد رو ویرایش میکنید (این فقط برا وقتی هست که از اس کیو ال استفاده کنین) بعد انجام تغییرات روی رکورد باید یکبار دیتا ست رو ریست کنین و مجدد اون رو Fill کنین به دیتا آداپتور
    اگه اینکار رو انجام بدید گمون نکنم به مشکل بر بخورید و نیازی هم به رفرش کردن دیتا گرید نیست چون این کار سرعت رو فقط پایین میاره
    با سپاس Spaceman

  9. #9
    کاربر دائمی آواتار juza66
    تاریخ عضویت
    دی 1389
    محل زندگی
    هفت تپه - 7hill
    پست
    798

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    نقل قول نوشته شده توسط NASA's Spaceman مشاهده تاپیک
    دوست عزیز شما وقتی رکورد رو ویرایش میکنید (این فقط برا وقتی هست که از اس کیو ال استفاده کنین) بعد انجام تغییرات روی رکورد باید یکبار دیتا ست رو ریست کنین و مجدد اون رو Fill کنین به دیتا آداپتور
    اگه اینکار رو انجام بدید گمون نکنم به مشکل بر بخورید و نیازی هم به رفرش کردن دیتا گرید نیست چون این کار سرعت رو فقط پایین میاره
    با سپاس Spaceman

    سلام

    ممنون میشم اگه آموزشی یا کد یا چیزی در اختیارمون بذارید تا یادبگیریم

    تشکر

  10. #10
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    کرج
    پست
    99

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    ممنون از تمام دوستان
    اما جواب دندونگیری نگرفتم
    آخرش چی کار کنم ؟

  11. #11

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    والا آموزش به نظرم نمیتونه باشه چون چند خط کدنویسی که بیشتر نیست
    اول که این ها رو تعریف میکنیم
            SqlConnection sql = new SqlConnection(@"server=.\SQLEXPRESS;database=stude  nt;integrated security=true;"); 
    SqlDataAdapter adapter;
    DataSet set = new DataSet();
    DataView view = new DataView();

    بعد توی فرم لود هم که دیتاگرید رو پر میکنیم از محتویات درون پایگاه داده
            private void Form1_Load(object sender, EventArgs e)        {
    sql.Open();
    adapter = new SqlDataAdapter("select * from person", sql);
    adapter.Fill(set, "person");
    view.Table = set.Tables["person"];
    view.Sort = "code";
    dataGridView1.DataSource = view;
    }

    و اینم هم یه دستور نوشتم برا اضافه کردن که در زمان اجرا اطلاعات اضافه شده رو به همراه بقیه اطلاعات نمایش میده
            private void button1_Click(object sender, EventArgs e)        {
    SqlCommand insert = new SqlCommand("insert into person(code,name,family,nomreh)values(" + Convert.ToInt32(textBox1.Text) + ",'" + textBox2.Text + "','" + textBox3.Text + "'," + Convert.ToInt32(textBox4.Text) + ")", sql);
    insert.ExecuteNonQuery();
    set.Reset();
    adapter.Fill(set,"person");
    view.Table=set.Tables["person"];
    view.Sort="code";
    dataGridView1.DataSource = view;
    }

    با سپاس Spaceman

  12. #12
    کاربر دائمی آواتار juza66
    تاریخ عضویت
    دی 1389
    محل زندگی
    هفت تپه - 7hill
    پست
    798

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    نقل قول نوشته شده توسط NASA's Spaceman مشاهده تاپیک
    والا آموزش به نظرم نمیتونه باشه چون چند خط کدنویسی که بیشتر نیست
    اول که این ها رو تعریف میکنیم
            SqlConnection sql = new SqlConnection(@"server=.\SQLEXPRESS;database=stude  nt;integrated security=true;"); 
    SqlDataAdapter adapter;
    DataSet set = new DataSet();
    DataView view = new DataView();

    بعد توی فرم لود هم که دیتاگرید رو پر میکنیم از محتویات درون پایگاه داده
            private void Form1_Load(object sender, EventArgs e)        {
    sql.Open();
    adapter = new SqlDataAdapter("select * from person", sql);
    adapter.Fill(set, "person");
    view.Table = set.Tables["person"];
    view.Sort = "code";
    dataGridView1.DataSource = view;
    }

    و اینم هم یه دستور نوشتم برا اضافه کردن که در زمان اجرا اطلاعات اضافه شده رو به همراه بقیه اطلاعات نمایش میده
            private void button1_Click(object sender, EventArgs e)        {
    SqlCommand insert = new SqlCommand("insert into person(code,name,family,nomreh)values(" + Convert.ToInt32(textBox1.Text) + ",'" + textBox2.Text + "','" + textBox3.Text + "'," + Convert.ToInt32(textBox4.Text) + ")", sql);
    insert.ExecuteNonQuery();
    set.Reset();
    adapter.Fill(set,"person");
    view.Table=set.Tables["person"];
    view.Sort="code";
    dataGridView1.DataSource = view;
    }

    با سپاس Spaceman


    کدها رو چندین بار تست کردم، باز همون فراخوانی مجدد دیتابیس در دیتاگرید شد که ...!!
    راه حلی دیگه وجود نداره؟! می خوام دیتاگرید دوباره فراخوانی نشه، یک سطر از دیتاگرید انتخاب کردم وقتی دوباره رفرش کنم برمیگرده اول سطر راهی دیگه نیست؟!



  13. #13

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    دوست عزیز تو این روش شما کاری به دیتا گرید ندارید و فقط دیتاست هست که به روز میشه و این روش برا من که خیلی عالی داره کار میکنه
    و یه نکته دیگه اینکه تا جایی که میشه سعی کنین از toolbox کمتر استفاده کنین روی سرعت تاثیر داره
    ولی کد بالا برا خودم که تو رکورد های بالا خوب کار میکنه
    با سپاس Spaceman

  14. #14

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    بعد از دو سال یکم ado.1.1 :)
    ببین شما برای اپدیت مگه ای دی یوزر رو نباید داشته باشید؟ خب حالا از همون ای دی استفاده میکنی . این همه سختی نداشت. فقط من همین جوری کد زدم مرتب و اصولی نوشتنش با خودت
    private void getuser()        {
    OleDbConnection con = new OleDbConnection();
    con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Laptop-os\Desktop\WindowsFormsApplication1\WindowsFormsAp plication1\bin\db.accdb";
    OleDbDataAdapter da = new OleDbDataAdapter("Select * from Table1", con);
    DataTable dt = new System.Data.DataTable();
    da.Fill(dt);
    dataGridView1
    .DataSource = dt;
    }
    private void getuser(int getid)
    {
    OleDbConnection con = new OleDbConnection();
    con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Laptop-os\Desktop\WindowsFormsApplication1\WindowsFormsAp plication1\bin\db.accdb";
    OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM Table1 WHERE id = " + getid + "", con);
    DataTable dt = new System.Data.DataTable();
    da.Fill(dt);
    dataGridView1
    .DataSource = dt;
    }
    private void Form1_Load(object sender, EventArgs e)
    {


    getuser();




    }


    private void dataGridView1_Click(object sender, EventArgs e)
    {
    textBox1.Text = dataGridView1.SelectedCells[1].Value.ToString();
    }


    private void btnsave_Click(object sender, EventArgs e)
    {
    OleDbConnection con = new OleDbConnection();
    int getid = Convert.ToInt32(dataGridView1.SelectedCells[0].Value);


    try
    {
    con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Laptop-os\Desktop\WindowsFormsApplication1\WindowsFormsAp plication1\bin\db.accdb";
    OleDbCommand cmd = new OleDbCommand("UPDATE Table1 SET name = '" + textBox1.Text + "' WHERE id = " + dataGridView1.SelectedCells[0].Value + " ", con);


    con.Open();
    cmd.ExecuteNonQuery();
    con.Close();
    MessageBox.Show("Save change....!!!!");
    getuser(getid);




    }
    catch (Exception ex)
    {


    MessageBox.Show(ex.Message);
    }
    finally
    { con.Dispose(); con.Close(); }


    }

    فایلشم ضمیمه شد
    فایل های ضمیمه فایل های ضمیمه

  15. #15

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    تو این حالت خیلییی کارهای دیگه هم میشه. کرد تنوع رنگ و ....
    در ضمن بابت لود اطلاعات سنگین من با backgroudworker بود اگه اشتباه نکنم کار کردم . مثل therd هست . نمیزاره system notresponding بشه برنامه .

  16. #16

    نقل قول: مشکل با رفرش شدن مجدد datagrid

    عزیزم شما از 2 تا dataset یا 2 تا datatable استفاده کن آخرین رکوردی که اضافه کردی بگیر با دیتاهای قبلیت merg کن

تاپیک های مشابه

  1. سوال: مشکل در رفرش شدن کد کپچا در ie
    نوشته شده توسط navid127 در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: یک شنبه 29 بهمن 1391, 14:49 عصر
  2. سوال: مشکل در رفرش شدن اطلاعات گرید
    نوشته شده توسط a_mari323 در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: جمعه 29 اردیبهشت 1391, 22:15 عصر
  3. سوال: مشکل در رفرش شدن صفحه با اجاکس
    نوشته شده توسط mohsen.nsb44 در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: سه شنبه 26 اردیبهشت 1391, 18:20 عصر
  4. مشکل در رفرش شدن dgv
    نوشته شده توسط toytown در بخش C#‎‎
    پاسخ: 9
    آخرین پست: چهارشنبه 19 مرداد 1390, 03:04 صبح
  5. مشکل در رفرش شدن دیتاگرید
    نوشته شده توسط toytown در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: دوشنبه 20 تیر 1390, 00:14 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •