مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

nsb

عضویت از 1393/03/24

بایند کردن گریدویو

  • چهارشنبه 23 تیر 1395
  • 09:58
تشکر میکنم

سلام
من یکسری اطلاعات رو داخل سیشن میریزم و اونو در گریدویو نمایش میدم
در صفحه محصولات یک گریدویو دارم و در صفحه مسترپیج یک گریدویو دیگر
مشکل اینجاست زمانی که اطلاعات محصول رو اضافه میکنم به گریدویو همون صفحه محصول اضافه میشه چون زیرش کد هام گریدویو رو بایند کردم اما گریدویو که در مسترپیج هست تا یکبار صفحه مجدد رفرش نشه اطلاعات رو نشون نمیده

کد زیر در صفحه محصولات

 

[CODE]
  int i = 0;
            string title = string.Empty;
            title = ((Label)GridView1.Rows[0].FindControl("Label8")).Text;
            
            string tedad = ((TextBox)GridView1.Rows[0].FindControl("textbox1")).Text;
            string price = string.Empty;
            price = ((Label)GridView1.Rows[0].FindControl("label1")).Text;
            string priceKol = string.Empty;
            
            if (Session["cart"] == null)
            {
                DataTable dt = new DataTable();

                DataColumn dc1 = new DataColumn("ردیف");
                DataColumn dc2 = new DataColumn("نام محصول");
                DataColumn dc3 = new DataColumn("تعداد");
                DataColumn dc4 = new DataColumn("قیمت");


                dt.Columns.Add(dc1);
                dt.Columns.Add(dc2);
                dt.Columns.Add(dc3);
                dt.Columns.Add(dc4);


                dt.Rows.Add(new object[] { i, title, tedad, price });

                Session["cart"] = dt;

                GridView2.DataSource = dt;
                GridView2.DataBind();
                //for (int j = 0; j < GridView3.Rows.Count; j++)
                //{
                //    GridView3.Rows[j].Cells[0].Text = (j + 1).ToString();
                //    GridView3.Rows[j].Cells[5].Text = ((long.Parse(GridView3.Rows[j].Cells[3].Text) * int.Parse(GridView3.Rows[j].Cells[2].Text)) - Int64.Parse(GridView3.Rows[j].Cells[4].Text)).ToString();
                //}


            
                for (int j = 0; j < GridView2.Rows.Count; j++)
                {
                    GridView2.Rows[j].Cells[0].Text = (j + 1).ToString();

                }
            }
        

         else
                {
                    //for (int s = 0; s < GridView2.Rows.Count; s++)
                    //{
                        //if(title!=GridView2.Rows[s].Cells[1].Text)
                        //{

                    DataTable dtTemp = (DataTable)Session["cart"];
                    dtTemp.Rows.Add(new object[] { i, title, tedad, price });
                    Session["cart"] = dtTemp;

                   
                        GridView2.DataSource = dtTemp;
                    GridView2.DataBind();
                for (int t = 0; t < GridView2.Rows.Count; t++)
                    {
                        GridView2.Rows[t].Cells[0].Text = (t + 1).ToString();
                    }
 //}
                    }

[/CODE]

 

کد زیر در مسترپیج

 

[CODE]
 DataTable dt = (DataTable)Session["cart"];

        GridView1.DataSource = dt;
        GridView1.DataBind();


        for (int i = 0; i < GridView1.Rows.Count; i++)
        {
            GridView1.Rows[i].Cells[0].Text = (i + 1).ToString();
            GridView1.DataBind();
        }
[/CODE]

 

پاسخ های این پرسش

تعداد پاسخ ها : 5 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 23 تیر 1395
  • 14:48

کد مستر پیج را درجا نوشتید ؟

در کدام رویداد ؟

کاربر سایت

nsb

عضویت از 1393/03/24

  • پنجشنبه 24 تیر 1395
  • 09:25

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

چون اول لود مسترپیج اتفاق میوفته

کد رو کجا باید بنویسم؟

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 24 تیر 1395
  • 10:51

میتونید در صفحه مربوطه گرید موجود در مسترپسج را  Find کنید و سپس دوباره اطلاع را Bind کنید بهش

کاربر سایت

nsb

عضویت از 1393/03/24

  • پنجشنبه 24 تیر 1395
  • 11:52

یه سوال دیگه دوست عزیز چطور میتونم کدی که قرار دادم رو تغییر بدم زمانی که محصول تکراری ثبت بشه بجای اضافه در یک سطر جدید از گریدویو به تعداد ان اضافه بشه

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

ممنون میشم کد من رو اصلاح کنید و قرار بدین

تشکر

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 24 تیر 1395
  • 13:16

موقع افزودن به سشن باید چک کنید

اگر از قبل بود یکی به تعداد اضافه بشه و اگر نبود یک رکورد جدید اضافه بشه

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)