日期:2014-05-17  浏览次数:20491 次

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); 




}

------解决方案--------------------
引用:
key 为关键字 

现在 datatable 有了

gridview1.datasource=datatable
this.gridview1.datad
 
之后怎么把关键字变红色 能具体点么 我基础差

绑定这么写
<%# "<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)%>