2009-11-16 4 views
0

Gridview 내부에 동적 텍스트 상자를 사용하고 있습니다. 그리드 안의 각 텍스트 상자에서 Tab 키를 누르면 데이터베이스의 총 값과 이전 텍스트 상자의 값을 사용하여 계산을 수행해야하며 그 결과는 다음 텍스트 상자에 표시되어야합니다.격자보기 탭 키 내부의 동적 텍스트 상자

감사 지사는

+0

언어/프레임 워크를 사용하고 있습니까? – Ikke

+0

우리는 프레임 워크 3.5를 사용하고 있습니다. – Geetha

답변

1

희망이 예제는 당신의 방법에 당신을 얻을 것이다. 그리드에서 템플릿 열로 두 개의 텍스트 상자 열을 설정하여 idOnTextChanged 이벤트를 정의 할 수 있습니다. AutoPostBack 특성도 중요하므로 사용자가 탭 아웃 할 때 텍스트 상자가 다시 게시됩니다. 뒤에 코드에서 OnTextChanged 이벤트를 처리하고 FindControl 메서드를 사용하여 텍스트 상자에 대한 참조를 가져와야합니다.

마크까지 : 뒤에

<asp:GridView ID="GridView1" runat="server"> 
     <Columns> 
      <asp:TemplateField> 
       <EditItemTemplate> 
        <asp:TextBox ID="TextBox1" runat="server" OnTextChanged="Texbox_Changed" AutoPostBack="true" ></asp:TextBox> 
       </EditItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField> 
       <EditItemTemplate> 
        <asp:TextBox ID="TextBox2" runat="server" ></asp:TextBox> 
       </EditItemTemplate> 
      </asp:TemplateField> 
     </Columns> 
    </asp:GridView> 

코드 :

Protected Sub Texbox_Changed(ByVal sender As Object, ByVal e As System.EventArgs) 
    Dim Param As String = CType(sender, TextBox).Text 
    Dim Result As String = Param 'TODO: perform calculation 
    CType(GridView1.Rows(GridView1.EditIndex).FindControl("TextBox2"), TextBox).Text = Result 
End Sub