¿Cómo oculto una columna solo en la página de lista en ASP.NET Dynamic Data?
-
09-06-2019 - |
Pregunta
Esto es algo similar a esta pregunta.
Sin embargo, en lugar de querer ocultar una columna por completo, solo busco ocultar la columna en la página List.aspx.
Mi ejemplo específico es que los campos que son largos (o al menos nvarchar(MAX)) se ocultan automáticamente de la página List.aspx tal como están pero aún son visibles en la página Edit.aspx.
Me gustaría replicar este comportamiento para otras columnas (más cortas).
es posible?
Solución
Puede crear una página personalizada para la tabla particular que desea cambiar.hay un ejemplo aquí.
Dentro de su página personalizada, puede configurar AutoGenerateColumns="false"
dentro de asp:GridView
controle y luego defina exactamente las columnas que desee, como esta:
<Columns>
...
<asp:DynamicField DataField="Product" HeaderText="Product" />
<asp:DynamicField DataField="Colour" HeaderText="Colour" />
</Columns>
Otros consejos
Creo que esta solución es realmente útil, porque te permite usar el modelo de atributos para especificar qué columnas van y dónde:http://csharpbits.notaclue.net/2008/10/dynamic-data-hiding-columns-in-selected.html
Si estás usando bootstrap, puedes configurarlo así
<asp:DynamicField DataField="Id" ItemStyle-CssClass="hidden" HeaderStyle-CssClass="hidden" FooterStyle-CssClass="hidden"/>