View Full Version : سوال: حذف سطر گرید ویوو
  
yones.kz
یک شنبه 28 خرداد 1391, 14:48 عصر
سلام
میخواستم بدونم یک گریدویوو که اطلاعاتشو مثلا از یک گریدویوو دیگه یا یک تکست باکس میگیره نه از بانک. و من بخوام یک سطرشو حذف کنم میشه یا نه؟
به چه روشی؟
crazy_1892
یک شنبه 28 خرداد 1391, 15:03 عصر
GridView1.DeleteRow(index of);
yones.kz
یک شنبه 28 خرداد 1391, 20:56 عصر
من این سوال رو بارها پرسیدم ولی کسی اون جوابی که میخواستم رو نداد تا ایکه خودم همت کردم نوشتم
 protected void gv_applyev_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        //gv_applyev.DeleteRow(e.RowIndex);
       DataTable dt = new DataTable();
        dt.Columns.Add("lsgroup", System.Type.GetType("System.String"));
        dt.Columns.Add("lsname", System.Type.GetType("System.String"));
        dt.Columns.Add("pname", System.Type.GetType("System.String"));
        dt.Columns.Add("lsunits", System.Type.GetType("System.String"));
        //}
        foreach (GridViewRow row in gv_applyev.Rows)
        {
            if (row.RowIndex != e.RowIndex)
            {
                Label lbllsname = (Label)row.FindControl("lbllsname");
                Label lbllsgroup = (Label)row.FindControl("lbllsgroup");
                Label lblpname = (Label)row.FindControl("lblpname");
                Label lblsunits = (Label)row.FindControl("lbllsunits");
                dt.Rows.Add();
                dt.Rows[dt.Rows.Count - 1]["lsgroup"] = lbllsgroup.Text;
                dt.Rows[dt.Rows.Count - 1]["lsname"] = lbllsname.Text;
                dt.Rows[dt.Rows.Count - 1]["pname"] = lblpname.Text;
                dt.Rows[dt.Rows.Count - 1]["lsunits"] = lblsunits.Text;
                dt.AcceptChanges();
            }
        }
        gv_applyev.DataSource = dt;
        gv_applyev.DataBind();   
    }
دوستان نظر بدن شاید کارم صحیح نبوده
به هرحال جواب کارمو گرفتم
shahrzad87
دوشنبه 29 خرداد 1391, 09:35 صبح
اگر یکی از ستون های گرید ویو کار حدف رو انجام می ده، یک روش دیگه هم هست، که اطلاعات رو اول توی dataTable ذخیره کنید و به گرید بایند کنید، به ستون گرید که می خواین کار حذف رو انجام بده RowCommand بدید مثلا deleteCol و بعدش توی event -> RowCommand گرید ویو اول اون سطر رو از dataTable حذف کنید و بعد دوباره به گرید بایندش کنید، کدش اینطور می شه :
Public Static DataTable dt = new DataTable
//جایی که به گرید مقدار می دین
if (dt.Columns.Count == 0)
{
 dt.Columns.Add("number");
                                              dt.Columns.Add("name");
}
dt.Rows.Add(txtNumber.Text , txtName.Text);
GV.DataSource = dt;
                    GV.DataBind();
protected void GV_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int index = Convert.ToInt32(e.CommandArgument);
            if (e.CommandName == "deleteCol")
            {
                dt.Rows.Remove(dt.Rows[index]);
                GV.DataSource = dt;
                GV.DataBind();
            }
        }
yones.kz
دوشنبه 29 خرداد 1391, 14:40 عصر
ممنون که راهنمایی کردید ولی خیلی دیر
کدی که خودم نوشتم جواب کارمو خیلی خوب داد و برا منم خیلی با ارزشه چون خودم نوشتم.
بازم ممنون shahrzad جان:چشمک:
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.