2011-10-24 6 views
0

長いテーブルがあるので、3つのGridViewに分割したいと思います。各GridViewには異なるヘッダー(DBとは異なる列)があります。私は1つのSqlDataSourceを使いたい。そのために、私はRepeaterを使用し、その中に3つのGridViewを配置することを考えています。3つのGridViewをリピータに配置する方法

各GridViewのヘッダを指定するために1つのパラメータを要求するStoredProcedureを使用しているので、そのパラメータをHiddenFieldとして設定しますが、それでも結果が得られません。この問題を解決するために

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1"> 
     <ItemTemplate> 

      <asp:HiddenField ID="HiddenField1" runat="server" Value='<%#Eval("GroupID")%>' /> 

      <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
           ConnectionString="<%$ ConnectionStrings:testConnectionString %>" 
           SelectCommandType="StoredProcedure"> 
       <SelectParameters> 
        <asp:ControlParameter ControlID="HiddenField1" /> 
       </SelectParameters> 
      </asp:SqlDataSource> 

      <asp:GridView ID="GridView1" runat="server" AllowSorting="True" CellPadding="4" 
       DataKeyNames="BadgeNo" DataSourceID="SqlDataSource1" ForeColor="#333333" 
       GridLines="None"> 
       <AlternatingRowStyle BackColor="White" ForeColor="#284775" /> 
       <Columns> 
        <asp:CommandField ShowSelectButton="True" /> 
       </Columns> 
       <EditRowStyle BackColor="#999999" /> 
       <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> 
       <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> 
       <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" /> 
       <RowStyle BackColor="#F7F6F3" ForeColor="#333333" /> 
       <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" /> 
       <SortedAscendingCellStyle BackColor="#E9E7E2" /> 
       <SortedAscendingHeaderStyle BackColor="#506C8C" /> 
       <SortedDescendingCellStyle BackColor="#FFFDF8" /> 
       <SortedDescendingHeaderStyle BackColor="#6F8DAE" /> 
      </asp:GridView> 

     </ItemTemplate> 
    </asp:Repeater> 

    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
         ConnectionString="<%$ ConnectionStrings:testConnectionString %>" 
         SelectCommand="SELECT DISTINCT GroupID 
           from courses"> 
    </asp:SqlDataSource> 

答えて

0

あなたは​​またはdesignにデータソースを持っている必要があります - あなたはLinqまたはEntity ModelまたはDataSetを使用することができるかもしれません。私はSqlDataSourceがここでは適切ではないと思う。現在のコード・スニペットで

、あなたがデザインを選択する必要があります - でSQL文をどこ条件/ GridViewコントロールのSqlDataSourceの句。

関連する問題