2016-04-25 17 views
0

Here's how the repeater looks now就asp.net而言,我是一個業餘愛好者。我想要做的是在我的頁面中有一箇中繼器控件,該控件設置爲在單選按鈕列表中選擇一個項目時顯示數據。檢索一箇中繼器內的標籤的文本屬性asp.net

高達至此所有的好,接下來我要做的是:

我想被點擊轉發的buttonbook當檢索lblId的文本。我不知道如何做到這一點。任何幫助都會令人滿意。

下面的代碼:

     <asp:Repeater ID="Repeater1" runat="server" 
       DataSourceID="SqlDataSourceHolidays" Visible="False" > 
       <ItemTemplate> 
       <table style="border: 1px solid #A55129; background-color: #FFF7E7"> 
       <tr> 
       <td style="width: 200px"> 
       <asp:Image ID="imgEmployee" ImageUrl='<%# Eval("h_description")%>' 
       runat="server" /> 
       </td> 
       <td style="width: 200px"> 
       <table> 
       <tr> 
       <td> 
       <b>Id:</b> 
       </td> 
       <td> 
       <asp:Label ID="lblId" runat="server" Text='<%#Eval("h_id") %>'> 
       </asp:Label> 
       </td> 
       </tr> 
       <tr> 
       <td> 
       <b>Name:</b> 
       </td> 
       <td> 
       <asp:Label ID="lblName" runat="server" Text='<%#Eval("h_name") %>'> 
       </asp:Label> 
       </td> 
       </tr> 
       <tr> 
       <td> 
       <b>Duration:</b> 
       </td> 
       <td> 
       <asp:Label ID="lblGender" runat="server" Text='<%#Eval("h_duration") %>'> 
       </asp:Label> 
       </td> 
       </tr> 
       <tr> 
       <td> 
       <b>Price:</b> 
       </td> 
       <td> 
       <asp:Label ID="lblCity" runat="server" Text='<%#Eval("h_price") %>'> 
       </asp:Label> 

       <asp:Button ID="Buttonbook" runat="server" Text="Button" 
       OnClick = "Buttonbook_Click" CommandArgument = '<%# Eval("h_id") %>' /> 
       </td> 
       </tr> 
       </table> 
       </td> 
       </tr> 
       </table> 
       </ItemTemplate> 

       </asp:Repeater> 
+0

參見[找到控制功能於asprepeater上按鈕點擊-event](http://stackoverflow.com/q/10880297/3711928)。 –

+0

Smbdy plz hlp與我的問題,因爲我說我是一個業餘即時通訊真的卡在這裏。 –

+0

謝謝你的高清晰度清晰度,最後弄明白了。 –

回答

0

註明,如果你需要一個特定的行或整個列表,在情況下,你需要檢查你的ButtonClick事件,你可以使用foreach cicle所有項目

foreach (RepeaterItem item in Repeater1.Items) 
{ 
    var MyLabel = (Label) item.FindControl("lblId"); 
    string labelText = Mylabel.Text; 
} 
+0

Sry如果這是一個noobish問題bt它說'mylabel在當前上下文中不存在' –

0

你必須寫在下面的邏輯在你的按鈕單擊事件

var button = (Button)sender; 
var item = (RepeaterItem)button.NamingContainer; 
var lblName = item.FindControl("lblName") as Label; 
+0

這意味着lblName保存lblName控件的值嗎?如果我寫「Response.Write(lblName);」這會顯示lblName中的值嗎? –

+0

是的,你可以得到任何lblName的屬性 – techspider

相關問題