因为datagrid web 控件的autogeneratecolumn 属性预设为true,表示会自动产生数据源中所有的字段。如果我们想自订datagrid web 控制所要显示的字段,只要将autogeneratecolumn属性设为false,并设定columns 属性即可。其设定语法如下所示:
<property name="columns">
<asp:boundcolumn/>
<asp:buttoncolumn/>
<asp:editcommandcolumn/>
<asp:hyperlinkcolumn/>
<asp:templatecolumn>
样版设定...
</asp:templatecolumn>
</property>
datagrid web 控件允许我们定义的字段,如下表所示:

下列程序代码片段展示了这几种字段:
<asp:datagrid id="dga" allowpaging="true" pagesize="5"
onpageindexchanged="dga_pagechg" runat="server"
pagerstyle-mode="numericpages" bordercolor="#808080"
headerstyle-font-names="courier new"
headerstyle-backcolor="#d1dceb"
autogeneratecolumns="false">
<property name="columns">
<asp:boundcolumn
headertext="姓名"
datafield="username"/>
<asp:buttoncolumn
headertext="电话"
buttontype="pushbutton"
datatextfield="usertel"/>
<asp:hyperlinkcolumn
headertext="电邮"
datanavigateurlfield="useremail"
datatextfield="useremail"/>
<asp:templatecolumn
headertext="住址">
<template name="itemtemplate">
<asp:image imageurl="ico1.gif" runat="server"/>
<%#container.dataitem("useradd")%>
</template>
</asp:templatecolumn>
<asp:editcommandcolumn
headertext="编辑"
buttontype="pushbutton"
canceltext="放弃"
edittext="编辑"
updatetext="确定"/>
</property>
</asp:datagrid>
其中这些字段的共同基础属性如下表所示:

这些字段也支持许多样式对象,可以让我们可以灵活的自订其显示外观,如下表所示:
