Gridview过长字段截取显示
来源:互联网 发布:淘宝立即购买按钮代码 编辑:程序博客网 时间:2024/05/16 08:31
方法一:
<script runat="server">
private String leftSubStr(String str, int len)
{
if (str.Length > len)
return str.Substring(0, len) + "...";
else
return str;
}
</script>
在aspx页面添加上面代码,然后把你绑定的字段用这个函数处理,例如:Text='<%# leftSubStr(Convert.ToString(Eval("你的字段")),20) %>'
方法二:
显示一定长度,后面加省略号,然后当鼠标移上去时再显示标题的全部内容,这样就即做到了不影响版面的布局,又做到了标题内容的全部显示.
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="RuleId" Width="100%" ShowHeader="False" GridLines="None">
<Columns>
<asp:TemplateField>
<ItemStyle Width="60px" />
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Font-Bold="True" ForeColor="Green" Text='<%# Eval("RuleOrder") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="规则标题">
<ItemStyle HorizontalAlign="Left" VerticalAlign="Middle" CssClass="grid1" Height="20px" />
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("HtmlPath") %>' ToolTip='<%...# Eval("RuleTitle")%>'
Text='<%...# Eval("RuleTitle").ToString().Length>16?Eval("RuleTitle").ToString().Substring(0,16)+"...":Eval("RuleTitle") %>' Font-Bold="True"></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
从上面的代码可以看出,我绑定Label控件的Text属性的时候用了条件表达式,当数据库中的标题长度大于16时,则截取前16个字符加上省略号进行显示,当小于16时,就全部绑定.ToolTip属性直接帮定标题字段,鼠标移上去就可显示全部标题了。(题外话,如果你作的是新闻发布系统,你也可以在Text属性的后面再加上一个发布日期的绑定字段,这样标题,日期全出来聊,呵呵,可以灵活应用,举一反三)
方法三:
绑定gridview单元格内容过长,用tooltip,单元格截取指定长度,鼠标停留时显示全部内容,
protected void gv_DataBound(object sender, EventArgs e)
{
// if (e.Row.RowIndex == -1) return;
//if (e.Row.RowType == DataControlRowType.DataRow)
// 演示ToolTip,使用GridView自带的ToolTip
for (int i = 0; i < gv.Rows.Count; i++)
{
gv.Rows[i].Cells[3].ToolTip = gv.Rows[i].Cells[3].Text;
if (gv.Rows[i].Cells[3].Text.Length > 6)
gv.Rows[i].Cells[3].Text = gv.Rows[i].Cells[3].Text.Substring(0, 3) + "...";
}
}
或者:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[5].ToolTip = e.Row.Cells[5].Text;
if (e.Row.Cells[5].Text.Length > 8) e.Row.Cells[5].Text = e.Row.Cells[5].Text.Substring(0, 5) + "...";
}
}
注意
如果长字段为超链接按照上述方法tooltip显示不出来
解决方法:先确保要截取的字段已转化为模板
然后:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
HyperLink hlk=(HyperLink)e.Row.FindControl("HyperLink1");
hlk.ToolTip = hlk.Text;
if (hlk.Text.Length > 8) hlk.Text = hlk.Text.Substring(0, 5)+"...";
//e.Row.Cells[4].ToolTip = e.Row.Cells[4].Text; ---这只适合Label
//if (e.Row.Cells[4].Text.Length > 8) e.Row.Cells[4].Text = e.Row.Cells[4].Text.Substring(0, 5) + "...";
}
}
方法四:
首先你要用模板列,然后在ItemStyle中写
<DIV STYLE="width: 120px; height: 50px; border: 1px solid blue;
overflow: hidden; text-overflow:ellipsis">
<%# Eval("你的字段名") %>
</DIV>
- Gridview过长字段截取显示
- Gridview过长字段截取显示
- gridview 过长字段显示...
- Net gridview字段过长省略号显示
- Gridview 字段过长
- asp.net的GridView字段显示过长问题
- GridView截取字段!
- 解决Asp.net下GridView中显示数据字段文字过长的办法
- 解决GridView中字段过长问题
- GridView Item显示的高度过长
- bootstarp table对某一字段过长做截取处理
- 为DataList、GridView赋值字段截取长度
- 如何处理GridView模板列绑定字段过长的问题
- 字符串过长CSS截取多余文字并用省略号显示
- GridView 列表字段省略显示(...)
- GridView 显示设置的字段
- CSS截取字段,让过长的字段结尾变成省略号(IE有效)
- 表格字段过长,用CSS实现省略号显示
- MyEclipse卡死的解决方案
- 关闭浏览器输入框自动补齐,兼容IE,FF,Chrome等
- MyEclipse快捷键、提示键、关键字颜色等配置
- jspsmart实现文件上传下载及jspSmartUpload.jar下载
- hdu3887 Counting Offspring
- Gridview过长字段截取显示
- ios(iphone)开发环境的配置
- GridView控件编辑、更新、删除示例(更新包含有DropDownList控件使用)(图)
- 基于JavaReport的Web报表开发实例
- 关于笔记本电脑开机输密码时关闭小键盘的方法 怎样关闭笔记本小键盘
- SQL语句查看SQL Server版本号
- GridView多行表头合并
- GridView导出Excel(解决Excel空白没有网格)
- 类成员的初始化--成员初始化列表(常量,引用,成员对象)