GridView绑定中将搜索的关键字颜色设置为红色!怎么做?
GridView绑定中将搜索的关键字颜色设置为红色!怎么做?
在线等!
------解决方案--------------------可以在GridView1_RowDataBound事件里写
大概这样
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
string str = e.Row.Cells[0].Text; //Cells[0]为第一列
//查找关键字
if (str.Contains("keyWord"))
{
string newStr = "<font color='red'>" + str + "</font>";
e.Row.Cells[0].Text = str.Replace("keyWord", newStr);
}
}
}
------解决方案--------------------
绑定这么写
<%# "<span style='color:Red'>"+Convert.ToString(Eval("key"))+"</span>"%>
------解决方案--------------------e.Row.RowType == DataControlRowType.DataRow
e.Row.RowType 是指当前行的类型
DataControlRowType 是GridView的行的类型集合 其中的DataRow是数据绑定行
这个判断语句的意思就是判断当前行是不是数据绑定行
是绑定时候用来过滤标题行和序号行等等非数据绑定行的
更多详情参考http://hi.baidu.com/xiaozha87/item/c65c61f06e5824c5a935a2cc
str.Contains("keyWord")
就是判断str中是否包含keyWord
------解决方案--------------------写个扩展方法
static MarkRed(this string src, string key)
{
return string.IsNullOrEmpty(src) ? src : src.Replay(key, "<font color='red'>"+src+"</font>");
}
<%# (Eval("title") as string).MarkRed(keyword)%>