2010-11-26 28 views
0

我想禁用/隱藏位於中繼器控制內的lnkDelete按鈕。我使用了這種方法,但是我收到一條錯誤消息: 未將對象引用設置爲對象的實例。我不確定似乎是什麼問題。我可以使用intellesense來顯示控件的Visible屬性,這證明我確實有範圍控制中繼器內的控件,任何人都可以提供幫助。 感謝接入中繼器控制和更改其屬性

protected void rptCAP_ItemDataBound(object sender, RepeaterItemEventArgs e) 
    { 
     var lnkDel = e.Item.FindControl("lnkDelete").Visible = false; 
     } 

鮑勃白色

+1

你的意思是通過中繼器控制?這也不是VBA代碼。 – 2010-11-26 21:26:54

回答

1

你需要添加一個if檢查語句,如果項目類型是一個項目或交替項,而不是標題項或頁腳項目:

If (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){ 
var lnkDel = e.Item.FindControl("lnkDelete").Visible = false; 

    } 
0

鮑勃它即使在FindControl沒有返回控件時,你也會試圖設置Visible屬性。

你或許應該這樣做

var lnkDel = e.Item.FindControl("lnkDelete"); 
if (lnkDel != null) 
    lnkDel.Visible = false; 
相關問題