DataGrid3
DataGrid3通过添加可视格式化和内容格式化构建于DataGrid2之上。
摘自 DataGrid3.aspx:
〈%@ Page language="C#" src="DataGrid.cs" inherits="Samples.Data
GridPage"%〉
...
〈asp:DataGrid runat=server id="titlesGrid"
AutoGenerateColumns="false"
Width="80%"
BackColor="White"
BorderWidth="1px" BorderStyle="Solid" CellPadding="2" Cell
Spacing="0"
BorderColor="Tan"
Font-Name="宋体" Font-Size="8pt"〉
〈property name="Columns"〉
〈asp:BoundColumn headerText="Title" DataField="title"/〉
〈asp:BoundColumn headerText="Author" DataField="au_name"/〉
〈asp:BoundColumn headerText="Date Published" DataField=
"pubdate"
DataFormatString="{0:MMM yyyy}"/〉
〈asp:BoundColumn headerText="Price" DataField="price"
DataFormatString="{0:c}"〉
〈property name="ItemStyle"〉
〈asp:TableItemStyle HorizontalAlign="Right"/〉
〈/property〉
〈/asp:BoundColumn〉
〈/property〉
〈property name="headerStyle"〉
〈asp:TableItemStyle BackColor="DarkRed" ForeColor="White"
Font-Bold="true"/〉
〈/property〉
〈property name="ItemStyle"〉
〈asp:TableItemStyle ForeColor="DarkSlateBlue"/〉
〈/property〉
〈property name="AlternatingItemStyle"〉
〈asp:TableItemStyle BackColor="Beige"/〉
〈/property〉
〈/asp:DataGrid〉
此.aspx文件显示了与前面相同的DataGrid控件声明,并设置了各种
样式属性。这将导致视觉上更具吸引力的表示。仍就不需要对代码进行任
何更改,使用与以前示例相同的有代码支持的文件。
因为它是从 WebControl 得到的,所以 DataGrid 控件继承了诸如
Width、BackColor、BorderStyle 和 Font.Name 之类的样式属性。此外,
DataGrid提供诸如CellPadding这样的属性,这些属性是特定于表的。这
些属性允许从总体上定制控件。
声明还显示了设置的若干项目样式,如headerStyle和Alternating
ItemStyle。这些样式控制着它们相应项目的外观。请注意此示例中出现
的样式合并。备选项目与一般项目的前景色相同,因为它们的样式是
AlternatingItemStyle和ItemStyle的组合。最后,此示例还通过右对齐
价格列中的文本说明了为特定列设置样式。
DataGrid还允许您格式化其单元格中的文本内容。这是通过设置Bound
Column的DataFormatString属性值完成的。该列使用其格式说明格式化使
用 String.Format的单元格内容。此属性可随格式化类型(如日期或货币)
一起预置或附加任意内容。此外,由于格式化考虑了当前页的CultureInfo
和请求,所以它也支持全局化。如果未指定格式,则使用该值的ToString
方法。
DataGrid4
DataGrid4 说明如何通过处理 SelectedIndexChanged 事件来利用
DataGrid 中的选择。
截自 DataGrid4.aspx:
〈%@ Page language="C#" src="DataGrid4.cs" inherits="Samples.
DataGrid4Page"%〉
...
〈asp:DataGrid runat=server id="titlesGrid"
AutoGenerateColumns="false"
Width="80%"
BackColor="White"
BorderWidth="1px" BorderStyle="Solid" CellPadding="2"
CellSpacing="0"
BorderColor="Tan"
Font-Name="宋体" Font-Size="8pt"
DataKeyField="title_id"
OnSelectedIndexChanged="OnSelectedIndexChangedTitlesGrid"〉
〈property name="Columns"〉
〈asp:ButtonColumn Text="Select" Command="Select"/〉
〈asp:BoundColumn headerText="Title" DataField="