-1

の2つのインスタンスGridViewとの2つのインスタンスがありますDataSources。私は1:(多く)の関係を持っています。「 SELECT 」をクリックするとGridView、最初のデータに応じて2番目のデータを表示する必要があります。ASP.NETを使用して解決する必要がありますが、コードビハインド(CSなど)ではなく、マークアップドキュメント(ASPXなど)で直接解決する必要があります。GridView

最初のGridViewオブジェクト:

<asp:GridView 
     ID = "GridView1" 
     runat = "server" 
     DataKeyNames = "ID_Segment" 
     DataSourceID = "DSSegment">
     <Columns>
       ...
     </Columns>
</asp:GridView>

最初のDataSourceオブジェクト:

<asp:SqlDataSource
     ID = "DSSegment"
     runat = "server" 
     ConnectionString = "<%$ ConnectionStrings:PraxeConnectionString %>"
     ... 
</asp:SqlDataSource>

2番目のGridViewオブジェクト:

<asp:GridView 
     ID = "GridView2" 
     runat = "server" 
     DataKeyNames = "ID_Podsit" 
     DataSourceID = "DSPodsit">
     <Columns>
       ...
     </Columns>
</asp:GridView>

2番目のDataSourceオブジェクト:

<asp:SqlDataSource
     ID = "DSPodsit"
     runat = "server" 
     ConnectionString = "<%$ ConnectionStrings:PraxeConnectionString %>" 
     ...
</asp:SqlDataSource>
4

1 に答える 1

0

これを試して

最初の GridView - 新しい QueryString を使用してページにリダイレクトする

<asp:GridView 
        ID="GridView1" 
        runat="server" 
        DataKeyNames="ID_Segment" 
        DataSourceID="DSSegment">
        <Columns>
           <asp:TemplateField>
               <a href='/?SegmentID=<%#Eval("ID_Segment")%>'>Select this</a>
           </asp:TemplateField>
        </Columns>

</asp:GridView>

2 番目のデータソース - クエリ文字列を使用

<asp:SqlDataSource ID="DSPodsit" runat="server" 

     ConnectionString="<%$ ConnectionStrings:PraxeConnectionString %>" 
        ... SelectCommand="SELECT * FROM tTable WHERE SegmentID=@SegmentID">

   <asp:QueryStringParameter name="SegmentID" QueryStringField="SegmentID" />

</asp:SqlDataSource> 

ここでさらに手がかりを見つけることもできます 詳細 DetailViewでGridViewをマスターする

于 2012-09-03T21:25:45.877 に答える