iT邦幫忙

0

asp.net下拉式連動顯示gridview

資料規劃:

問題敘述: 想做一個下拉選單,已先將兩張資料表合併做成檢視表v_item,
下拉選單[KUBUN] 帶動 [VESION] ,[VESION]選定後,可以顯示在gridview1 ,
目前sql連結取用v_item檢視表',選完[VESION] 無法顯示GRIDVIEW ,
想請問是否一定要用後製程式碼才能處理,還是有其他方式,
請各位高手指教 ,謝謝大家...

1 個回答

8
賽門
iT邦超人 1 級 ‧ 2015-08-19 16:28:28
最佳解答


如上圖紅框,你要勾選AutoPostBack,這樣選好DropDownList時,會觸發PostBack刷新網頁,GridView的SelectCommand會自動觸發,完成資料擷取及顯示在GridView中。

如果選了AutoPostBack還是沒動作,看一下GridView的相關設置是否會自動刷新。

看更多先前的回應...收起先前的回應...
hans2012 iT邦新手 5 級 ‧ 2015-08-19 17:29:43 檢舉

你好: Autopostback 已啟用 仍然沒反應

賽門 iT邦超人 1 級 ‧ 2015-08-19 18:48:31 檢舉

我試作...

結果...

賽門 iT邦超人 1 級 ‧ 2015-08-19 18:49:29 檢舉

程式碼...分兩個回應給你參考...

<pre class="c" name="code"><asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" DataSourceID="SqlDataSource1" DataTextField="kubun" DataValueField="kubun">
        </asp:DropDownList>
        <asp:DropDownList ID="DropDownList2" runat="server" AutoPostBack="True" DataSourceID="SqlDataSource2" DataTextField="vesion" DataValueField="vesion">
        </asp:DropDownList>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource3">
            <Columns>
                <asp:BoundField DataField="NAME" HeaderText="NAME" SortExpression="NAME" />
                <asp:BoundField DataField="KUBUN" HeaderText="KUBUN" SortExpression="KUBUN" />
                <asp:BoundField DataField="VESION" HeaderText="VESION" SortExpression="VESION" />
            </Columns>
        </asp:GridView>
賽門 iT邦超人 1 級 ‧ 2015-08-19 18:50:03 檢舉
<pre class="c" name="code"><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:TestConnectionString %>" SelectCommand="SELECT DISTINCT [kubun] FROM [v_item]"></asp:SqlDataSource>
        <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:TestConnectionString %>" SelectCommand="SELECT [kubun], [vesion] FROM [v_item] WHERE ([kubun] = @kubun)">
            <SelectParameters>
                <asp:ControlParameter ControlID="DropDownList1" Name="kubun" PropertyName="SelectedValue" />
            </SelectParameters>
        </asp:SqlDataSource>
賽門 iT邦超人 1 級 ‧ 2015-08-19 18:50:40 檢舉
<pre class="c" name="code"><asp:SqlDataSource ID="SqlDataSource3" runat="server" ConnectionString="<%$ ConnectionStrings:TestConnectionString %>" SelectCommand="SELECT * FROM [v_item] WHERE (([KUBUN] = @KUBUN) AND ([VESION] = @VESION))">
            <SelectParameters>
                <asp:ControlParameter ControlID="DropDownList1" Name="KUBUN" PropertyName="SelectedValue" />
                <asp:ControlParameter ControlID="DropDownList2" Name="VESION" PropertyName="SelectedValue" />
            </SelectParameters>
        </asp:SqlDataSource>

以上提供你參考.

hans2012 iT邦新手 5 級 ‧ 2015-08-19 20:37:23 檢舉

找到了,非常感謝您的協助!! 已解決!!

賽門 iT邦超人 1 級 ‧ 2015-08-19 21:00:44 檢舉

Great!!
讚

我要發表回答

立即登入回答