2014-06-05 21 views
0

我想將行設置爲不可見的用戶選擇True,但該方法不起作用。請幫忙。Visual Basic在DataBound上隱藏行

謝謝!

Protected Sub dg_RowDataBound(ByVal sender As System.Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dg.ItemDataBound 

     Dim ddl As New DropDownList 
     Dim lbl As New Label 
     Dim ddlretired As New DropDownList 
     Dim lblretired As New Label 
     If (e.Item.ItemType = ListItemType.EditItem And dg.EditItemIndex = e.Item.ItemIndex) Then 

      ddl = e.Item.FindControl("ddlType") 
      lbl = e.Item.FindControl("lbltype") 

      ddlretired = e.Item.FindControl("ddlEdit") 
      lblretired = e.Item.FindControl("lblretired") 

      ddl.Items.FindByText(lbl.Text).Selected = True 
      ddlretired.Items.FindByText(lblretired.Text).Selected = True 

      lbl.Visible = False 
      lblretired.Visible = False 

     End If 

End Sub 
+0

很難從稀疏和粗略的描述,告訴,但你應該能夠只使用一個'RowFilter'排除某些行 – Plutonix

回答

0

我相信你將不得不暫停綁定,然後將可見性設置爲false。

從以下鏈接

CurrencyManager currencyManager1 = (CurrencyManager)BindingContext[MyGrid.DataSource]; 
currencyManager1.SuspendBinding(); 
MyGrid.Rows[5].Visible = false; 
currencyManager1.ResumeBinding(); 

Unable To set row visible false of a datagridview