2012-02-16 6 views
1

からの1は私がURLにこれを追加したいと思い、この複数DataNavigateUrlFields ...データソースから1、drpdownlist

<asp:GridView ID="gvCategories" runat="server" > 
<Columns> 
<asp:HyperLinkField DataTextField="CategoryName"   DataNavigateUrlFields="CategoryID"  DataNavigateUrlFormatString="~/Learning.aspx?categoryID={0" /> 
</Columns> 
</asp:GridView> 

のようなドロップダウンリストとページ上のグリッドビューを考えてみましょう: &ビュー= <%= SelectedDropdownlistvalue%>

どうすればいいですか?

答えて

1

私はTemplateFieldを使用します。DropDownList.SelectedValueを覚えておいてください

<asp:GridView ID="gvCategories" runat="server" > 
<Columns> 
    <asp:TemplateField> 
     <ItemTemplate> 
     <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("CategoryName", "~/Learning.aspx?categoryID={0}")+" &view=" + DropDownList1.SelectedValue %>' 
         Text="Goto Page"></asp:HyperLink> 
     </ItemTemplate> 
    </asp:TemplateField> 
</Columns> 
</asp:GridView> 

ポストバックで得られるので、リンクはその時点で構築されます。ドロップダウンリストの値が変更されたときにリンクを動的に変更するには、ドロップダウンリストのAutoPostBack = "true"を設定します。

+0

ありがとう、私は応答を感謝します。私はtemplateFieldで実験しましたが、ドロップダウンリストから選択した値を取得するための正しい構文を取得できませんでした。私は束を試した...あなたはサンプルを与えることができる任意のチャンス? – Bengal

+0

私は上記のコードとその罰金をテストしました。ドロップダウンリストのマークアップが表示され、CategoryNameがnullでないことを確認できますか? gridViewはデータを取得していますか? AutoPostBackがtrueに設定されていることを確認します。 – Mubarek

+0

すべてのフィードバックありがとうございます。 Bengal

関連する問題