【问题标题】:GridView not displaying on webpageGridView 不显示在网页上
【发布时间】:2018-08-10 15:52:53
【问题描述】:

我正在尝试使用 gridview 来显示我的数据库中的数据,但我似乎无法让 gridview 显示在页面上。我插入了一个断点,gridview 显示了数据源中正确的行数,以及数据绑定后 gridview 中的正确行数。我仍然没有在网页上看到任何显示,当使用 chrome 检查它应该在哪里时,我看到了标题标签,但没有任何与 gridview 相关的内容。我做错了什么?

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        string id = Request.QueryString["profileID"];
        GridView achievementTable = new GridView();
        AchievementDatabaseTableAdapters.UserGamesTableAdapter UserGamesAdapter = new AchievementDatabaseTableAdapters.UserGamesTableAdapter();
        AchievementDatabase.UserGamesDataTable userGames = UserGamesAdapter.GetUserGames();
        achievementTable.DataSource = userGames.Select("ProfileID =" + id).CopyToDataTable();
        achievementTable.DataBind();
    }
}

.aspx 代码

<%@ Page Title="Profile" Language="C#" AutoEventWireup="true" CodeBehind="Profile.aspx.cs" 
    MasterPageFile="~/Site.Master" Inherits="AchievementProject.Profile" %>

<asp:Content ID="ProfileContent" ContentPlaceHolderID="MainContent" runat="server">
    <h2><%: Title %></h2>
    <asp:Gridview ID="achievementTable" runat="server" AutoGenerateColumns="True" 
        ShowHeaderWhenEmpty="true" EmptyDataText="Failed"></asp:Gridview>
</asp:Content>

【问题讨论】:

    标签: c# asp.net gridview


    【解决方案1】:

    achievementTable 是页面加载事件的本地。将它移动到至少一个类级别的受保护变量,它将可供您的视图使用。

    【讨论】:

    • 这解决了问题,我现在可以正确显示我的表格。谢谢。
    • @Jordan 如果对您有用,请随时将我的答案标记为正确答案。
    猜你喜欢
    • 2011-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-09
    • 1970-01-01
    • 2023-03-05
    • 2019-02-26
    相关资源
    最近更新 更多