簡體   English   中英

不自動顯示ASP.NET Web表格gridview中的列的數據注釋?

[英]Data annotation for not autodisplay columns in asp.net web forms gridview?

我目前正在使用asp.net網絡表單4.5。

我正在使用gridview,並且gridview具有一個很好的功能,稱為自動生成列,並且我正在嘗試使用它,但是有些列我不想顯示。

我知道我可以將autogenerate列設置為false並為自己調用這些列,但是我在考慮是否有諸如模型上的數據注釋之類的功能(順便說一下,我使用數據庫優先)並阻止了gridview從顯示。

我發現最接近的帖子是數據注釋hide屬性/字段,但我認為這不適用於我的情況。

先感謝您!

在WebForms中,沒有像MVC中那樣簡單的標記來隱藏帶有數據注釋的列。 如果要使用自動生成列,則可以使用列索引在數據綁定事件中隱藏列:

protected void gridView_DataBound(object sender, GridViewRowEventArgs e) 
{
    e.Row.Cells[index].Visible = false;
}

我建議不要使用自動生成的列,而應在gridview中顯式指定每個列。 這樣,如果將來數據源發生更改,您的GUI中就不會出現任何意外行為。

如果您創建了帶有數據注釋的模型,並且為其指定了不會在gridview中顯示的名稱,請確保您在Gridview上設置了ItemType並將其指向您的模型。 它將正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM