2011-12-21 2 views
0

GridView (실제로 묶음 있음)에 드롭 다운 목록이 있지만 그 중 하나만 염려합니다. 사용자가 드롭 다운 목록에 항목을 추가할지 확인하기 위해 새 선택을 할 때 캡처해야합니다.SelectedIndexChanged를 catch하지 않음

protected void DebtorDropDownList_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    GridViewRow row = GridView1.Rows[GridView1.EditIndex]; 
    DropDownList list = (DropDownList)row.FindControl("DebtorDropDownList"); 
    string temp = list.SelectedValue; 
} 

다음은 ASP 코드입니다 : 여기에 내 코드 ..라는 결코 극복

이다 내가 무엇을 놓치고

<ItemTemplate> 
    <asp:DropDownList ID="DebtorDropDownList" AppendDataBoundItems="true" runat="server" 
         DataSourceID="SqlDataSource4" DataTextField="FirstName" DataValueField="contactkey" 
         SelectedIndexChanged="DebtorDropDownList_SelectedIndexChanged" AutoPostBack="True" > 
         <asp:ListItem Selected="True">Select</asp:ListItem> 
         <asp:ListItem >Add New Contact</asp:ListItem> 
        </asp:DropDownList> 
        <asp:SqlDataSource ID="SqlDataSource4" runat="server" 
         ConnectionString="<%$ ConnectionStrings:AuditDevConnectionString2 %>" 
         SelectCommand="sp_fc_vm_getSpokeTo" SelectCommandType="StoredProcedure"> 
         <SelectParameters> 
          <asp:ControlParameter ControlID="GridView1" DefaultValue="0" Name="DebtorKey" 
           PropertyName="SelectedValue" Type="Int32" /> 
         </SelectParameters> 
        </asp:SqlDataSource> 
       </ItemTemplate> 

은? 올바른 컨트롤을 찾기 위해 올바른 코드를 사용하고 있습니까?

+0

전체 '

'에 대해'runat = "server"를 지정 했습니까? – Yogu

+3

포스트 백에서 추측하면 드롭 다운 목록이 다시 바인딩됩니다. Gridview itemCommand에서 그 값을 잡아 보는 것이 어떻습니까? griview에서 sqldatasource 이동 –

+0

내 문제가 발견되었습니다. 내 ASP를 자세히 보면 "SelectedIndexChanged"이벤트에 "On"이 없음을 알 수 있습니다. 일단 내가 예상대로 일을했다고 덧붙였다. – Craig

답변

0

내 문제가 발견되었습니다. ASP를 자세히 보면 "SelectedIndexChanged"이벤트가 "on"에 없음을 알 수 있습니다.

+0

당신의 대답을 신고하는 것을 잊지 마세요 :) –

관련 문제