0

こんにちは、CUSTOMERS で満たされたコンボボックスと、CUSTOMERS で満たされたグリッドビューを含む updatepanel があります (コンボボックスと同じ)。ユーザーがコンボボックスから顧客を選択すると、グリッドビューが更新され、コンボボックスには常にすべての顧客が含まれます。私が抱えている問題は、更新パネルがコンボボックス selectedindexchanged を起動するのは、ユーザーが最初に顧客を選択したときだけであるため、顧客を変更したい場合は何も起こりません。デバッグしてもまったく起動しません。コンボボックスを更新パネルに配置すると機能しますが、遅いです。同じ検索/ドロップダウン/オートコンプリート機能を備えたコンボボックスに代わるものはありますか?

見たい場合は、これが私の現在のコードです

 <asp:ComboBox ID="cbCustomer" runat="server" AutoCompleteMode="SuggestAppend" 
        AutoPostBack="True" DataSourceID="dataSourceCBCust" DataTextField="CUST_NAME" 
        DataValueField="CUST_NO" MaxLength="0" style="display: inline;">
    </asp:ComboBox>
    <asp:UpdatePanel ID="upCustomer" runat="server" ChildrenAsTriggers="true" UpdateMode="Conditional">
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="cbCustomer" EventName ="SelectedIndexChanged" />
            <asp:AsyncPostBackTrigger ControlID="gvSiteAddress" EventName ="SelectedIndexChanged" />
        </Triggers>
        <ContentTemplate>
            <br />
            <asp:GridView ID="gvCustomer" runat="server" AllowPaging="True" DataSourceID="dataSourceGVCust" 
            AutoGenerateColumns="True" DataKeyNames="CUST_NO" Visible="False">
                <Columns>
                    <asp:CommandField ShowSelectButton="True" />
                </Columns>
                <SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
            </asp:GridView>
        </ContentTemplate> 
    </asp:UpdatePanel>

バックエンド

Protected Sub cbCustomer_SelectedIndexChanged(sender As Object, e As EventArgs) _
    Handles cbCustomer.SelectedIndexChanged
    dataSourceGVCust.SelectCommand = _
          ConfigurationManager.AppSettings("SelectCustomer") _
        & "  WHERE CUST_NO LIKE '%" _
        & cbCustomer.Text.TrimEnd _
        & "%' ORDER BY CUST_NAME"
    gvCustomer.Visible = True
End Sub
4

0 に答える 0