请问datagrid进行数据编辑更新时怎么设定那个textbox的长度

lilas1981 2003-07-23 05:29:43
我一点击编辑,datagrid变成编辑状态时,那个textbox就很长
原来我的datagrid比较短,后来变成很长,难看死了
我试了一下下面的代码,刚开始放在datagrid默认的update的函数里,不起作用;放在datagrid默认的edit的函数里,有时候还报错,怎么办呢?大家帮帮我
ListItemType lit_footer=e.Item.ItemType;
if (lit_footer==ListItemType.EditItem)
{
((System.Web.UI.WebControls.TextBox)e.Item.Cells[0].Controls[0]).Width=Unit.Pixel(20);
((System.Web.UI.WebControls.TextBox)e.Item.Cells[0].Controls[0]).TextMode=TextBoxMode.SingleLine;
((System.Web.UI.WebControls.TextBox)e.Item.Cells[2].Controls[0]).Width=Unit.Pixel(20);
((System.Web.UI.WebControls.TextBox)e.Item.Cells[2].Controls[0]).TextMode=TextBoxMode.SingleLine;
((System.Web.UI.WebControls.TextBox)e.Item.Cells[3].Controls[0]).Width=Unit.Pixel(20);
((System.Web.UI.WebControls.TextBox)e.Item.Cells[3].Controls[0]).TextMode=TextBoxMode.SingleLine;
}
...全文
16 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
einsteincao 2003-08-05
  • 打赏
  • 举报
回复
最简单做法:把ItemTemplate中的Label换成一个TextBox(调节一下属性使TextBox没有边框)这样永远都一样长。
较难做法: 修改DataGrid长度。
seesea125 2003-08-05
  • 打赏
  • 举报
回复
这样的模板列就可以
<asp:TemplateColumn HeaderText="解决方法">
<ItemStyle Width="14%"></ItemStyle>
<ItemTemplate>
<asp:label text='<%#DataBinder.Eval(Container, "DataItem.method") %>' runat=server ID="Label12"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtmethod" text='<%#DataBinder.Eval(Container, "DataItem.method")%>' Runat =server Wrap =false />
</EditItemTemplate>
</asp:TemplateColumn>
mongtze 2003-08-05
  • 打赏
  • 举报
回复
在EDIT 事件里边,
{
...
dg.EditItemIndex = e.Item.ItemIndex;
dgBind();// bind the datagrid again;
((TextBox)dg.Item[dg.EditeItemIndex].Cells[1].Controls[0]).Columns = 10;
... ...
}
chnking 2003-07-23
  • 打赏
  • 举报
回复
把你的这些代码放在datagrid的ItemDataBound事件中
linnys 2003-07-23
  • 打赏
  • 举报
回复
在datagrid的属性生成器中,把列转换成模板列,然后可以在编辑模板中设置textbox的各种属性
sin360 2003-07-23
  • 打赏
  • 举报
回复
在EditTemplate中设置textbox的长度比较好,同时检查css的设置是否覆盖了本设置
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2003-07-23 05:29
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。