2017-02-25 130 views
0

我有一個連接到aspx代碼中的數據源的gridview。所選的gridview行在clcik按鈕上隱藏。我想隱藏行,即使用戶註銷並且不應顯示在隱藏行中登錄。我曾嘗試使用ViewState,但它不起作用。任何人都有如何完成這一點的想法。GridView中的ViewState ASP.Net

我的GridView:

edit Select Approve data 1 data 2 data 3 
當用戶點擊選擇和確認按鈕行是隱藏

。我希望所有的行都被調用,除了被點擊的行以外,被點擊的行根本不應該被顯示。我做了一些研究,發現ViewState是最好的,但不知道如何完成它。

我的代碼背後:

SqlConnection con = new SqlConnection("Data Source=User-PC\\User;Initial Catalog=Subject Registration System;Integrated Security=True"); 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (Session["username"] != null) 
     { 
      Label1.Text = Session["username"].ToString(); 

     } 

     con.Open(); 


     SqlCommand cmd = new SqlCommand("SELECT FullName FROM [Programme Leader] WHERE Username= '" + Label1.Text + "'", con); 
     SqlDataReader reader = cmd.ExecuteReader(); 

     reader.Read(); 
     Label1.Text = reader["FullName"].ToString(); 
     reader.Close(); 

     con.Close(); 



     if (!Page.IsPostBack) 
     { 
      string gd; 
      gd = (string)ViewState["Gridview"]; 
     } 



     Panel2.Visible=true; 
     Panel3.Visible = false; 
    } 

    protected void DDL1_SelectedIndexChanged(object sender, EventArgs e) 
    { 

     Panel2.Visible = true; 

    } 



    protected void GridView2_RowEditing(object sender, GridViewEditEventArgs e) 
    { 

     Panel2.Visible = true; 
     GridView2.DataBind(); 
    } 

    protected void GridView2_RowUpdated(object sender, GridViewUpdatedEventArgs e) 
    { 

     Panel2.Visible = true; 
     GridView2.DataBind(); 

    } 



    protected void Button1_Click(object sender, EventArgs e) 
    { 

      GridView1.SelectedRow.Visible = false; 

     ViewState["gridview"]=GridView1; 



    } 


    protected void Button2_Click(object sender, EventArgs e) 
    { 
    Response.Redirect("~/Programme Leader Front Page.aspx"); 
    } 



} 



} 

謝謝

+0

您將不得不將該用戶的隱藏行永久存儲在某個地方,就像在數據庫中一樣。 – VDWWD

回答

0

如果是隱藏綁定到特定的用戶行,你可以堅持的是到數據庫中。因此,新表格將包含gridview中行的主鍵和用戶標識。在爲gridview執行選擇時,只需排除存儲在新表中的用戶的行。

視圖狀態是ASP.NET頁面框架用於在往返之間保留頁面和控件值的方法。視圖狀態在您的案例中不起作用,因爲您希望信息在用戶註銷時保留下來。