2011-09-26 5 views
0
<asp:Repeater ID="rptList" runat="server"> 
         <HeaderTemplate> 
         </HeaderTemplate> 
         <ItemTemplate> 
          <tr> 
           <td width="15%"> 
            <b>Subject</b> 
           </td> 
           <td width="60%"> 
            <%#Eval("Title")%> 
           </td> 
          </tr> 

리피터에 데이터 바인딩을 수행하고 제목 값을 바인딩합니다.버튼 클릭시 서버 측 리피터에서 값을 얻는 방법

string MysqlStatement = "SELECT Title, RespondBy FROM tbl_message WHERE MsgID = @Value1"; 
     using (DataServer server = new DataServer()) 
     { 
      ..  } 
     rptList.DataSource = ds; 
     rptList.DataBind(); 

버튼이 동일한 페이지에서 클릭되었을 때 어떻게 서버 측에서 title 값을 얻을 수 있습니까?

답변

1

내가 레이블처럼 서버 컨트롤에 제목을 넣어 것입니다, 다음이 같은 수행 할 수 있습니다

int itemIndex = 0; 

Label lbl = rptList.Items[itemIndex].FindControl("Label1") as Label; 
if (lbl != null) 
{ 
    string labelValue = lbl.Text; 
} 
: 뒤에 코드에서 다음

<asp:Repeater ID="rptList" runat="server"> 
    <ItemTemplate> 
     <asp:Label ID="Label1" runat="server" Text='<%#Eval("Title")%>' /> 
    </ItemTemplate> 
</asp:Repeater> 

을 그리고

1

제목의 값을 FindControl()을 호출 할 수있는 레이블의 텍스트로 설정합니다.

관련 문제