如题。
是不是把 HeaderStyle-Width FooterStyle-Width ItemStyle-Width 这三个同时设上? 必须设成同样宽度吗?
还是设置<ItemTemplate>里的Label的长度?
还是设置<EditItemTemplate>里的Label的长度?
是不是把 HeaderStyle-Width FooterStyle-Width ItemStyle-Width 这三个同时设上? 必须设成同样宽度吗?
还是设置<ItemTemplate>里的Label的长度?
还是设置<EditItemTemplate>里的Label的长度?
解决方案 »
- 关于权限树的几个问题。
- 如何学好asp? vbscript 和 javascript都要学好么? 请教(散分)
- 为何点击左边目录树的节点后,只剩下了右边页面,左边页面消失了?
- ===== .Net里如何从数据库里读取出数据,在浏览器的标题栏中显示出来
- 关于在datalist中点击linkbutton弹出确认对话框的问题
- .net中的在Oracle中插入数据出错,就大家帮帮忙
- 为何我用了母版页后,页面运行时在原代码里找不到 runat="server"????????晕死了
- 请教一个不难的算发问题。
- //这个问题太奇怪了,所以我忍不住想问一下大家!
- 怎样用asp.net动态生成控件???
- VS2005打包程序如何通过程序设置虚拟目录的权限!
- 【请教思路】JS动态创建可拖放控件,该如何保存坐标及控件呢?
最好在datarowbound事件里处理一下字符串
str="sadfasffasgdggsadgfasfgas";
newstr=str.Length>20?str.SubString(0,20)+"...":str;
你看看这个贴子吧。
下面代码是设置<ItemTemplate>里的Label的长度并把多余的字截掉或显示“…”
protected void rpLogRecycleBin_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType != ListItemType.Header && e.Item.ItemType != ListItemType.Footer)
{
HiddenField HTitle = e.Item.FindControl("HFTitle") as HiddenField;
Literal ltTitle = e.Item.FindControl("ltTitle") as Literal;
if (HTitle.Value.Length > 30)
{
ltTitle.Text = HTitle.Value.ToString().PadRight(30).Substring(0, 30) + "...";
}
else { ltTitle.Text = HTitle.Value.ToString(); }
}
}
<asp:TemplateField SortExpression="sortname">
<EditItemTemplate><asp:TextBox ID="TextBox1" runat="server" BorderWidth="1px" BorderStyle="Solid" Text='<%# Bind("sortname") %>'></asp:TextBox></EditItemTemplate><ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("sortname") %>' Width="100px"></asp:Label> </ItemTemplate></asp:TemplateField>
//给文本框赋颜色,长度
protected void grSort_RowDataBound(object sender, GridViewRowEventArgs e)
{
if ((e.Row.RowState & DataControlRowState.Edit) == DataControlRowState.Edit)
{
((TextBox)e.Row.FindControl("TextBox1")).Width = 102;
((TextBox)e.Row.FindControl("TextBox1")).BorderColor = System.Drawing.ColorTranslator.FromHtml("#73C547");
}
}
不过在修改过程代码要改动一下。不能和以前一样
((TextBox)(grSort.Rows[e.RowIndex].Cells[0].Controls[1])).Text.Trim() 以前我们写的是Controls[0]是因为那是直接绑定的。现在改成1是应为textbox1是第一个控件。因此从第一个开始。(也许这里我理解有误)
newstr=str.Length>20?str.SubString(0,20)+"...":str;
这个应该是比较好的。而且比较容易理解