在DataGrid中对内容的截取[Come From WindowsBoy]

原创 2004年10月19日 14:19:00
在使用DataGrid时经常遇到单元格中的内容过长而导致文本的换行,这样使本来简洁的页面看上去非常乱。下面的方法可以解决这个问题。
当单元格的内容超出指定的长度后,截去多余的字,然后在鼠标停留在某个单元格上时,就显示全部的内容。
此方法有个缺点:每个单位格都是指定长度的。
  //某个datagrid的ItemDataBound事件。
  //上半部分设置鼠标悬停时的背景色
  //下半部分才起作用
  public void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
  {
   if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
   {
    Color color = this.DataGrid1.SelectedItemStyle.ForeColor;
    string foreColor = string.Format("#{0:X2}{1:X2}{2:X2}", color.R, color.G, color.B);
    color = this.DataGrid1.SelectedItemStyle.BackColor;
    string backColor = string.Format("#{0:X2}{1:X2}{2:X2}", color.R, color.G, color.B);
    // 如果没有设置选中项的颜色,则不设置鼠标效果
    if(foreColor != "#000000" || backColor != "#000000")
    {
     e.Item.Attributes.Add("onmouseover", string.Format("oldItemForeColor=this.style.color;this.style.color='{0}';oldItemBackColor=this.style.backgroundColor;this.style.backgroundColor='{1}'", foreColor, backColor));
     e.Item.Attributes.Add("onmouseout", "this.style.color=oldItemForeColor;this.style.backgroundColor=oldItemBackColor;");
    }
    e.Item.Cells[1].Text = "<div style='text-overflow : ellipsis; overflow : hidden;width:80px;' title='"+e.Item.Cells[1].Text+"'><nobr>" + e.Item.Cells[1].Text + "</nobr></div>";
    e.Item.Cells[2].Text = "<div style='text-overflow : ellipsis; overflow : hidden;width:80px;' title='"+e.Item.Cells[2].Text+"'><nobr><a class=lan href='"+this.Request.ApplicationPath+@"/UpLoadFile/"+System.IO.Path.GetFileName(e.Item.Cells[7].Text)+"'>" + e.Item.Cells[2].Text + "</a></nobr></div>";
    e.Item.Cells[3].Text = "<div style='text-overflow : ellipsis; overflow : hidden;width:80px;' title='"+e.Item.Cells[3].Text+"'><nobr>" + e.Item.Cells[3].Text + "</nobr></div>";
    e.Item.Cells[4].Text = "<div style='text-overflow : ellipsis; overflow : hidden;width:80px;' title='"+e.Item.Cells[4].Text+"'><nobr>" + e.Item.Cells[4].Text + "</nobr></div>";
    e.Item.Cells[5].Text = "<div style='text-overflow : ellipsis; overflow : hidden;width:90px;' title='"+e.Item.Cells[5].Text+"'><nobr>" + e.Item.Cells[5].Text + "</nobr></div>";
    e.Item.Cells[6].Text = "<div style='text-overflow : ellipsis; overflow : hidden;width:90px;' title='"+e.Item.Cells[6].Text+"'><nobr>" + e.Item.Cells[6].Text + "</nobr></div>";
   }
  }

在DataGrid中对内容的截取

在使用DataGrid时经常遇到单元格中的内容过长而导致文本的换行,这样使本来简洁的页面看上去非常乱。下面的方法可以解决这个问题。当单元格的内容超出指定的长度后,截去多余的字,然后在鼠标停留在某个单元...
  • WindowsBoy
  • WindowsBoy
  • 2004年10月18日 19:51
  • 1857

在DataGrid中对内容的截取

在DataGrid中对内容的截取 在使用DataGrid时经常遇到单元格中的内容过长而导致文本的换行,这样使本来简洁的页面看上去非常乱。下面的方法可以解决这个问题。当单元格的内容超出指定的长度后,截去...
  • comeon_data
  • comeon_data
  • 2004年11月27日 10:02
  • 535

datagrid的文字换行与连续字符串换行处理,字符串三种截取方式

1 文字自动换行:nowrap:false 2 当时字符串,比如email这样的字段时,就需要用到字符串的拼接,首先,先贴出我解决问题的方法,再介绍字符串的三种拼接方式: 我解决问题的方法...
  • m0_37505412
  • m0_37505412
  • 2017年05月17日 17:12
  • 427

easyui的截取字符省略显示

问题:在easyui的datagrid中,当某行的数据字数 过长的时候会把表格撑开 解决方案:当数据个数超过限制范围时,用省略号来表示 ...
  • keepLoveing
  • keepLoveing
  • 2013年07月15日 13:39
  • 2031

DataGrid 支持字符截断显示

DataGrid支持截断时, 需要分2部分, DataGridColumnHeader和DataGridCell。 1)创建上述2部分的ControlTemplate 。2)把其中的ContentPr...
  • muzizongheng
  • muzizongheng
  • 2013年07月10日 15:44
  • 911

java 文本内容中 截取 方法

java 文本内容中 截取 方法   private static String getMSG(InputStream in){ while (m_str.indexOf(Constants....
  • sihei
  • sihei
  • 2013年12月26日 19:35
  • 1179

MLY -- 6.Your dev and test sets should come from the same distribution

根据你app应用的市场:(i)US,(ii)China,(iii)India,(iv)Other,你将猫图片数据分为四个部分。 若想要一个开发集和一个测试集时,我们可以随机地选两个作为开发集,剩...
  • mengmengmiao
  • mengmengmiao
  • 2017年02月27日 12:36
  • 120

另类DATAGRID数据编辑修改 datagrid .asp.net

另类DATAGRID数据编辑修改 武汉 马...
  • xlaws615
  • xlaws615
  • 2006年08月04日 16:12
  • 1387

OOP:面向对象编程

从了解Java一直被告诉OOP,可是OOP到底是神马呢?一直是只知其然不知其所以然,虽然现在还是表述不清楚其内涵,就先把大家的标准答案整理一下吧。 OOP:Object Oriented...
  • Pangzi23
  • Pangzi23
  • 2015年10月29日 14:44
  • 312

如何及时获得datagrid中单元格里改变后的内容

  一般想要及时得到单元格中内容发生改变是的内容,用        Dim singleCol As New DataGridTextBoxColumn        AddHandler singl...
  • happlylife
  • happlylife
  • 2007年01月31日 11:13
  • 391
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在DataGrid中对内容的截取[Come From WindowsBoy]
举报原因:
原因补充:

(最多只允许输入30个字)