马上给分!datagrid列宽问题??
通过datatset和datagrid绑定,datagrid有好几个列,字段宽度不一样,我想自己设定每列的宽度,怎么实现??
为什么我这样不能实现呢?
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim widths() As String = {100, 80, 120, 100, 100, 50, 150}
Dim i As Integer
For i = 0 To DataGrid1.Columns.Count - 1
DataGrid1.Columns(i).ItemStyle.Width = Unit.Parse(widths(i))
Next
End Sub
问题点数:20、回复次数:15Top
1 楼lilyfirstone(?!?,......)回复于 2002-12-17 14:48:08 得分 0
在datagrid里可视化的属性设置里就有列宽设置Top
2 楼garth(小虾)回复于 2002-12-17 15:58:49 得分 0
对阿,设计器里可以编辑每列的宽度和其他样式属性
Top
3 楼qiushuiwuhen(秋水无恨)回复于 2002-12-17 16:19:43 得分 15
设置 OnItemCreated="ItemCreated"
Protected Sub ItemCreated(Sender As Object, e As DataGridItemEventArgs)
if e.Item.ItemType=ListItemType.Header then
Dim i as Integer
Dim widths() As String = {1000, 80, 120, 100, 100, 50, 150}
For i = 0 To e.Item.Cells.Count - 1
e.Item.Cells(i).Width = Unit.Parse(widths(i))
Next
end if
End SubTop
4 楼raychiu(绝世好欣)回复于 2002-12-17 16:25:28 得分 0
用模板列绑定数据后例如
<asp:TemplateColumn HeaderText="内容">
<ItemTemplate>
<asp:label Text='<%# container.dataitem("mcontent") %>' Width=210 Runat=server ID="Label1"/>
</ItemTemplate>
</asp:TemplateColumn>
上边的 width 属性就是其宽度Top
5 楼wujianlei9797(云帆)回复于 2002-12-17 16:28:56 得分 0
在datagrid 的属性生成器中设置列宽Top
6 楼expertwk(小鱼儿)回复于 2002-12-17 16:56:26 得分 0
我的代码这样子的,加在Page_Load中可以改变的了
[C#]
private void setwidth()
{
string[] arr=new string[4]{"20","85","125","580"};
for (int i=0;i<MyDataGrid.Columns.Count;i++)
{
MyDataGrid.Columns[i].ItemStyle.Width=Unit.Parse(arr[i].ToString());
}
}
不知道你的为什么不行!其他的都没有什么设置Top
7 楼qiushuiwuhen(秋水无恨)回复于 2002-12-17 17:05:45 得分 0
因为他并没设 AutoGenerateColumns="false",我想Top
8 楼yohomonkey(思考中的猴)回复于 2002-12-17 17:54:57 得分 0
有一点!当你的数据宽度超过你的定义时,定义的宽度失效。Top
9 楼vbvc(深蓝)回复于 2002-12-17 18:52:29 得分 0
同意yohomonkey(ht)说法
我正是遇到这个问题?
那又该怎么解决?Top
10 楼vbvc(深蓝)回复于 2002-12-17 21:15:54 得分 0
譬如如果一列宽度设定为50px,但有一个数据很长,如:
asfsabfsjfhdjfhsajkh5445421@asfgasgfs.com.cn
结果定义的宽度失效了
怎么办啊!?Top
11 楼hllsmart(红烧肉)回复于 2002-12-17 21:41:31 得分 0
把每一列绑定到<asp:BoundColumn />里再设置他的宽度应该可以.Top
12 楼vbvc(深蓝)回复于 2002-12-17 23:07:03 得分 0
但是,我是通过动态来绑定的啊,这怎么实现?Top
13 楼nidttmwwt(beibi)回复于 2002-12-17 23:12:23 得分 5
用css.
word-wrap:break-word;Top
14 楼nkdzc()回复于 2002-12-17 23:36:57 得分 0
upTop
15 楼vbvc(深蓝)回复于 2002-12-18 19:58:10 得分 0
nidttmwwt(beibi)
能具体说说吗Top
16 楼vbvc(深蓝)回复于 2002-12-19 12:55:54 得分 0
采用qiushuiwuhen(秋水无恨)上面的方法和后来提供的方法:
style="word-wrap:break-word;"
问题解决。Top





