Gridview列安排

时间:2014-02-18 17:12:35

标签: asp.net gridview

我有问题在gridview中显示不同列中的数据,但数据显示在一列中。

设计

<asp:GridView ID="GridView1" runat="server" class="international_news" AutoGenerateColumns="False" DataKeyNames="news_id"  onrowcommand="GridView1_RowCommand">                       
    <Columns>
        <asp:BoundField  DataField="news_id"/>
        <asp:BoundField  DataField="news_title"/>                            
        <asp:TemplateField>
            <ItemTemplate>
                <asp:LinkButton ID="LinkButton1" runat="server" CommandName="ReadMore" CommandArgument='<%#Eval("news_id")%>'>
                    Read More
                </asp:LinkButton>
            </ItemTemplate>
        </asp:TemplateField>                    
    </Columns>        
</asp:GridView>     

背后的代码

if (!this.IsPostBack)
            {
                dt.Columns.AddRange(new DataColumn[2] { new DataColumn("news_id", typeof(string)),
                new DataColumn("news_title", typeof(string))});
                while (dr.Read())
                {
                    if (dr[1].ToString() != "yes")
                    {
                        dt.Rows.Add(dr[0].ToString());
                        dt.Rows.Add(dr[1].ToString());                        
                        GridView1.DataSource = dt;
                        GridView1.DataBind();
                    }
                }

1 个答案:

答案 0 :(得分:1)

我不肯定你正在遇到什么 - 你是说在HTML页面上显示时gridview控件只显示一列?如果是这样,你能告诉我们列中的内容吗?

另外,我发现你的“代码背后”存在问题 - 你不应该在while循环中设置和绑定gridview。在循环之后移动它,看看这是否会影响你所看到的。


好的,所以你在这一点上看到两列 - 而不是一列(从我能说的)。在这一点上,担心的是链接按钮不会出现,对吗?您是否在页面上看到任何HTML,如果您查看页面源,可能是链接按钮?如果是这样,你可以发布你看到的内容吗?

另外,如果在while循环之外绑定gridview时发生任何变化,请告诉我们。


根据您最近的评论,听起来您现在正在查看所有三列。还有其他问题吗?你期待看到不同的东西吗?你能告诉我们你期望看到的与你实际看到的一样吗?