ASP.NET中GridView中显示的数据如何每行显示两组

ASP.NET前端的GridView绑定数据源后,已经拿到了数据空中的值,前端控件分别绑定了相应的字段,如何让前端显示的时候能每行并排显示两个查询结果呢?
如图:

clipboard.png
目前是这样的布局,怎么才能让每行显示两个?

<div style="align-content:center;text-align:center">
        <asp:GridView ID="GridView1" runat="server" AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging" HorizontalAlign="Center" PageSize="15" AutoGenerateColumns="False">
            <Columns>
                <asp:HyperLinkField DataTextField="KS_ZKZ" HeaderText="考生准考证号" DataNavigateUrlFields="KS_ZKZ" DataNavigateUrlFormatString="StuInfoDetail.aspx?KSZKZ={0}" />
            </Columns>
        </asp:GridView>
    </div>
阅读 5.2k
3 个回答
--说白了,这不就是分页功能么。

--我们在后台给`DataView1`绑定的数据源做文章。

--在用Mysql语句查询符合要求的数据源时

select * from [TableName] where limit 1,5  

--表示查询第2行到第6行的数据。(注意limit后的数字表示的是行索引)

--如果是sqlserver的话用Top实现 

select top 3 id from tablename where id not in (select top 6 id from tablename)  

--表示查询第7行到第9行的数据(行数由来6+1=7、3+6=9)

--你可以根据自己的需求改变语句内的数字便能实现你的要求,中心思想就是这样

推荐使用 ListView,GroupItemCount就是每组的个数:

<asp:ListView ID="_groupListView" runat="server" DataKeyNames="movie_id" DataSourceID="_moviesDataSource" GroupItemCount="2" >
  <GroupTemplate>
    <tr>
      <asp:PlaceHolder runat="server" ID="itemPlaceholder" />
    </tr>
  </GroupTemplate>
  <LayoutTemplate>
    <table>
      <asp:PlaceHolder ID="groupPlaceholder" runat="server" />
    </table>
  </LayoutTemplate>
  <ItemTemplate>
    <td>
      movie_id:
      <asp:Label ID="_movie_idLabel" runat="server" Text='<%# Eval("movie_id") %>' /> <br />
      title:
      <asp:Label ID="_titleLabel" runat="server" Text='<%# Eval("title") %>' /> <br />
      release_date:
      <asp:Label ID="_release_dateLabel" runat="server" Text='<%# Eval("release_date", "{0:d}") %>' /> <br />
      <br />
    </td>
  </ItemTemplate>
</asp:ListView>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题