2014-12-26 61 views
1

我正在創建一個社交網站,我似乎無法得到代碼背後的「LinkEmail」,我需要這個功能,因爲我然後用它來發布到數據庫。如何獲得鏈接按鈕生成中繼器控制內的文本

LinkEmail正在第一個轉發器中動態生成,我需要一種方法來獲取該值。

在我的瀏覽器收到此錯誤的時刻:

編譯器錯誤信息:CS0103: The name 'LinkEmail' does not exist in the current context

這是ASPX代碼

<asp:Repeater runat="server" ID="Repeater1"> 
<ItemTemplate> 

    <div style="border-top: thin none #91ADDD; border-bottom: thin none #91ADDD; padding: 10px; width: 548px; margin-top: 10px; right: 10px; left: 10px; border-left-width: thin; margin-left: 15px; background-color: #F6F6F6; border-left-color: #91ADDD; border-right-color: #91ADDD;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        <br /> 
        <div style="width: 58px; height: 40px"> 
        <asp:Image ID="Image2" runat="server" Height="59px" ImageAlign="Top" ImageUrl="~/Profile/Image/Default.png" Width="55px" /> 
         </div> 
        <div style="width: 307px; margin-left: 65px; margin-top: -60px"> 
         <asp:Label ID="Label6" runat="server" Font-Bold="True" Font-Names="Arial" ForeColor="#3b5998"><%#Eval("YourName") %> </asp:Label> 
        </div> 
        <div id="status" style=" width: 461px; margin-left: 78px; margin-top: 11px;">&nbsp;<asp:Label ID="Label7" runat="server" Font-Italic="False" ForeColor="Black" Font-Size="Medium"><%#Eval("Birthday") %> </asp:Label> 

         <asp:LinkButton ID="LinkEmail" runat="server" OnClick="lbl_Click"><%#Eval("Email") %></asp:LinkButton> 
         <asp:Button ID="Button1" runat="server" Text="Button" /> 
        </div> 

        &nbsp; 
       </div> 


</ItemTemplate> 

其實我想鏈接當有人點擊此鏈接時,按鈕生成的文本就像這樣的會話photo。你能給我一個合適的代碼嗎?

根據這張照片[email protected]必須LinkEmail.Text ,,,我想這樣

+0

谷歌asp.net的LinkBut​​ton。你會注意到處理Repeater控件的'ItemCommand'的答案。你也會注意到LinkBut​​ton控件的'CommandName'和'CommandArgument'屬性也被使用。 –

+0

您是如何處理代碼的? – Avijit

+0

其實我不知道,如何爲此編寫cs代碼。我是新來的asp.net。 –

回答

1

你所要做的,一旦你的Repeater控制是在網頁上的第一件事,就是註冊ItemCommand事件。我傾向於在頁面的OnInit事件中執行此操作,而不是將其作爲asp:Repeater標記的屬性。

在.cs文件:

override protected void OnInit(EventArgs e) 
{ 
    base.OnInit(e); 
    Repeater1.ItemCommand += new RepeaterCommandEventHandler(Repeater1_ItemCommand); 
} 



private void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e) 
{ 
     switch (e.CommandName) 
     { 
      case "mail": 
       string emailId = e.CommandArgument.ToString(); 
       break; 
     } 
} 

在ASPX:Repeater控件內

<asp:LinkButton ID="LinkEmail" runat="server" CommandName="mail" CommandArgument='<%# Eval("Email") %>'><%#Eval("Email") %></asp:LinkButton> 
+0

是的,它的工作,我不知道如何謝謝你,謝謝soooooooooo多 –

相關問題