2011-07-11 49 views
0

內的標籤,你可以在我的代碼中看到...我在ItemTemplate中有一個標籤,我想要的是當我點擊那個特定的控件時,我想訪問標籤,這樣我就可以更新狀態...我如何獲得訪問gridview/repeater

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1" OnItemCreated="Repeater1_ItemCreated" OnItemDataBound="Repeater1_ItemDataBound"> 
<ItemTemplate> 
    Book: 
    <asp:Label ID="lblStatus" runat="server"></asp:Label> 
    <Mycontrol:Content1 ID="EmpControl" runat="server" OnMyControlClick="EmpControl_clicking" /> 
    <br /> 
</ItemTemplate> 
</asp:Repeater> 


    protected void EmpControl_clicking(object sender, EmployeeEventArgs e) 
    { 
     // how do i get access to the lblStatus??? 
    } 

回答

2

您將需要使用FindControl方法中的模板訪問控制:

protected void EmpControl_clicking(object sender, EmployeeEventArgs e) 
    { 
     MyControl myControl = (MyControl)sender; 
     Label c = (Label)myControl.Parent.FindControl("lblStatus"); 
    } 
+0

我lblStatus是不是裏面MyControl其ItemTemplate中 –

+0

內部myControl的父屬性是項目模板。 –

+0

我看到這裏有一個小問題...讓我說...我在我的轉發器中有10行,當我點擊第1行時,我能夠訪問標籤並顯示消息,這很棒...讓我們說如果我點擊行2我得到標籤的訪問權限並顯示消息,但行1消息仍然存在,我如何清除行1 lblStatus?換句話說,在任何時間顯示消息 –