DataGrid Web Control 之控制列的宽度、高度和对齐方式

评价:
0
(0用户)

默认情况下,DataGrid控件自动调整行和列,使它们适应你指给它的全部的高度和

宽度。在全部宽度内,它根据列头的文本来控制列的宽度。所有数据默认都是左对齐
的。
为控制列的特性,应该关闭“自动生成列”属性——将AutoGenerateColumns属性置
为false.在实际的使用中,只有在Short—termuses,如quick proof-of concept pages 或者演示的时候,才将该属性设为True.对于生成应用程序而言,你应该默认添加列,每个列可以是绑定列或者模板列。
为了控制某个列宽,可以为该列产生一个样式元素(style-element)然后将元素的宽度属性设为标准单位,下面给出了一个项样式的width属性设置的HTML代码:
<asp: BoundColumn DataField=”title”SortExpression=”title”
Header Text=”Title”>
<ItemStyle Width=”100px”></ItemStyle>
</asp:BoundColumn>
注:可以将ItemStyle-Width=”100px”写入Boundolumn中。
你可以使用样式元素设置对齐方式,将其设为“左”、“右”或者其它在“水平对齐”集合中定义的值(在VS中,每个单独的列对齐方式是可见的)
下面是一个例子:
<asp: BoundColumn DataField=”title” SortExpression=”title”
HeaderText=”Title”>
<ItemStyle Width=”100px”HorizontalAlign=”Right”></ItemStyle>
</asp:BoundColumn>
你还可以使用样式元素设定列的高度,你很可能会觉得这没有设定宽度灵活,因为设定某一列的高度也就设定了全部列的高度。
你也可以在运行时通过代码设定宽度,采取这种方式的一个例子就是ItemGreated事件句柄,下面的例子将前两列分别设定为100和50像素。
//C#
Private void DataGrid-ItemCreated(object sender,
System.Web.UI.WebControls.DataGridItemEventArgs e)
{
e.Item.Cells[0]Width=new Unit(100);
e.Item.Cells[1].Width=new Unit(50);
}
当然,将这些可以在设计时就设置好的宽度值通过代码来设置几乎没有任何意义。一般情况下,你可能只是想要基于运行时的值来设定宽度而采取这种方法,你可以将单元格控件的宽度设为标准的单位(往往是像素)。但是,它并不直接将这些长度数据转化为像素——这些仅仅是字符数。然而,当你创建一个项的时候,可以使用这些数据来检查。

注册并通过认证的用户才可以进行评价!

发表评论

Back to Top