datagrid固定列宽的问题(紧急求助) 建立了个datagrid,并有编辑和删除功能,但点击编辑时,datagrid的列宽变宽了。如何才能固定列宽?先谢了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False"> <Columns> <asp:BoundColumn DataField="Name" HeaderText="名字"></asp:BoundColumn> <asp:BoundColumn DataField="lunarDate" HeaderText="日期" ItemStyle-Width='50%'> </asp:BoundColumn> <asp:BoundColumn DataField="Body" HeaderText="介绍" ItemStyle-Width='200'> </asp:BoundColumn> </Columns> </asp:DataGrid> http://dotnet.aspx.cc/ShowDetail.aspx?id=B3F3462D-DC34-41CE-9FEE-6965B2A3D1AD 添加模板列,设置被编辑的textbox的宽度为100%;如果是绑定列就不用做这些<asp:TemplateColumn SortExpression="UserName" HeaderText="姓名"> <HeaderStyle Width="70px"></HeaderStyle> <ItemTemplate> <%# DataBinder.Eval(Container.DataItem,"UserName") %> </ItemTemplate> <EditItemTemplate> <asp:TextBox id=UserName Text='<%# DataBinder.Eval(Container.DataItem,"UserName") %>' Width="100%" Runat="server"> </asp:TextBox> </EditItemTemplate></asp:TemplateColumn>在ItemDataBound事件中加如下代码,通过调整i的取值来设置对某几个列调整private void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e){ switch (e.Item.ItemType) { case ListItemType.EditItem: for (int i=0; i < DataGrid1.Columns.Count; i++)//只调整被编辑的列 { if(e.Item.ItemType==ListItemType.EditItem) { e.Item.Cells[i].Attributes.Add("Width", "70px"); } } break; }}可以参考http://singlepine.cnblogs.com/articles/266538.html csdn上连一个 牛人也没有 这点忙都帮不了 C#调用C++Builder的dll不成功 怎么读取固定在网页表格中的数据? 请帮我翻译一下 SQL SERVER2000连接问题 hplyl 关于bho插件开发,谁能给我个思路啊 读取指定文件内的文本文件然后写入数据库 C#新手问个泛型的问题 关于AES解密问题,求帮助 这个问题该怎么解决??急问 给定一个GRB的顔色如#deff57要把它转化成system.drawing.color能不能转呢?
<Columns>
<asp:BoundColumn DataField="Name" HeaderText="名字"></asp:BoundColumn>
<asp:BoundColumn DataField="lunarDate" HeaderText="日期" ItemStyle-Width='50%'>
</asp:BoundColumn>
<asp:BoundColumn DataField="Body" HeaderText="介绍" ItemStyle-Width='200'>
</asp:BoundColumn>
</Columns>
</asp:DataGrid>
<asp:TemplateColumn SortExpression="UserName" HeaderText="姓名">
<HeaderStyle Width="70px"></HeaderStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"UserName") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id=UserName Text='<%# DataBinder.Eval(Container.DataItem,"UserName") %>' Width="100%" Runat="server">
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
在ItemDataBound事件中加如下代码,通过调整i的取值来设置对某几个列调整
private void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
{
switch (e.Item.ItemType)
{
case ListItemType.EditItem:
for (int i=0; i < DataGrid1.Columns.Count; i++)//只调整被编辑的列
{
if(e.Item.ItemType==ListItemType.EditItem)
{
e.Item.Cells[i].Attributes.Add("Width", "70px");
}
}
break;
}
}
可以参考
http://singlepine.cnblogs.com/articles/266538.html