Как отобразить верхний и нижний колонтитулы GridView, если все строки удалены

#c# #asp.net #gridview

#c# #asp.net #gridview

Вопрос:

У меня есть GridView с операциями CRUD, при загрузке я добавляю одну пустую строку без данных, просто чтобы показать сетку, после этого я могу добавлять новые строки, обновлять, удалять, но когда я удаляю все строки, моя сетка исчезает, и я теряю верхний и нижний колонтитулы сетки.

 protected void Page_Load(object sender, EventArgs e)
{
    GridView1.DataSource = new object[] { null };
    GridView1.DataBind();
}
 

Есть ли какое-либо решение для установки этой фиксированной строки?

 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        if (e.Row.DataItem == null)
        {
            e.Row.Visible = false;
        }
    }
}
 

Ответ №1:

Я вижу, вы хотите GridView , чтобы у вас были верхние и нижние колонтитулы, когда внутри них нет данных. В ASP.NET 4.0 , они ввели атрибут ShowHeaderWhenEmpty , вы должны установить для true него значение, если хотите отображать заголовок даже GridView для .