如何从gridview显示数据

问题描述 投票:0回答:4

我只是添加了网格视图并添加了列并给出了标题文本 但是当我运行应用程序时,我看不到任何网格,至少我应该看到网格列名称

我还需要做些什么吗

asp.net gridview
4个回答
1
投票

确认所有设备均已正确连接,并正在分配

DataSource
并执行
DataBind()
。一旦您验证了这两件事正在发生,请确保您的数据源返回某种类型的结果集,其中至少包含一项。

A

GridView
根本不会显示任何内容,除非结果集中至少有 1 项。如果您绑定到
DataSet
或某种类型的对象列表,并且其中没有项目,则网格将根本不会显示。连标题都没有。在这种情况下,您应该设置
EmptyDataText
属性来显示某些内容。

如果没有,如果这有帮助,请发布您的 GridView 标记和绑定网格的代码,我会看看是否能找出问题所在。


0
投票

检查aspx页面代码

<asp:MyGridView runat="server" DataKeyNames="pkey" AutoUpdateAfterCallBack="true"
            Width="100%"
            ID="grduser" AutoGenerateColumns="False">
            <Columns>
                <asp:BoundField HeaderText="Sr No." DataField="rownumber" ReadOnly="true" HeaderStyle-Width="10px"
                    ItemStyle-Width="10px" />

                <asp:BoundField HeaderText="FirstName" DataField="FirstName" SortExpression="FirstName"
                    ReadOnly="true" HeaderStyle-Width="120px" ItemStyle-Width="120px" />
                <asp:BoundField HeaderText="LoginName" DataField="LoginName" SortExpression="LoginName"
                    ReadOnly="true" HeaderStyle-Width="120px" ItemStyle-Width="120px" />
                <asp:BoundField HeaderText="Email" DataField="Email" SortExpression="Email" ReadOnly="true"
                    HeaderStyle-Width="120px" ItemStyle-Width="120px" />
                <asp:BoundField HeaderText="Role" DataField="Role" SortExpression="Role" ReadOnly="true"
                    HeaderStyle-Width="30px" ItemStyle-Width="30px" />
                <asp:BoundField HeaderText="Reportingto" DataField="Reportingto" SortExpression="Reportingto"
                    ReadOnly="true" HeaderStyle-Width="120px" ItemStyle-Width="120px" />
                <asp:BoundField HeaderText="MobileNo" DataField="MobileNo" SortExpression="Mobile_no"
                    ReadOnly="true" HeaderStyle-Width="30px" ItemStyle-Width="30px" />

            </Columns>
        </asp:MyGridView>

绑定网格的Cs文件代码

DataSet ds = new DataSet();
ds = //get dataset form the database 
DataView dv = new DataView(ds.Tables[0]);
this.grduser.DataSource = dv;
this.grdusers.DataBind();


0
投票

最简单的方法就像凯尔西所说:

<emptydatatemplate>              
   No Data Found. 
</emptydatatemplate> 

其他技巧:

  1. 覆盖 CreateChildControls(示例:http://forums.asp.net/t/1003306.aspx

  2. 手动插入一行(示例:链接

© www.soinside.com 2019 - 2024. All rights reserved.