怎样让现实在gridview中一个字段的数据重复出现的时候就显示其他的颜色,请大家给点详细的代码.谢谢
解决方案 »
- 问一下,在页面上的Textbox控件上输入信息后直接敲回车键,或者点击某个按钮,都会运行后台的if (!IsPostBack) {} 里的代码,是这样吗?为什么?
- 在网上搞了个ip数据库,但不知道里面的字段怎样用换算得到的!望各位指教!谢谢
- 请高手帮忙:异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: '17' 附近有语法错误。
- Cookie更新问题
- 请问高手如何安全的传递页面参数?
- Javascript和Asp.net的区别,进来看一下嘛。
- 加载DropDwonList的问题
- ASP.NET的页面之间数据传递的方法?
- 简单问题,高分相送,在线等!
- 小妹问一个问题~~~我想学asp.net+sql. sql server 2000用哪个版本呀?~
- 无法调试,要怎么配置
- 如何从字符串中提取日期(年月)啊?
GridView1.DataBind();
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
DataRowView mydrv = myds.Tables["飞狐工作室"].DefaultView[i];
string score = Convert.ToString(mydrv["起薪"]);
if (Convert.ToDouble(score) < 34297.00)//大家这里根据具体情况设置可能ToInt32等等
{
GridView1.Rows[i].Cells[4].BackColor = System.Drawing.Color.Red;
}
}
sqlcon.Close();全部后台代码:using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Drawing;public partial class Default7 : System.Web.UI.Page
{
SqlConnection sqlcon;
SqlCommand sqlcom;
string strCon = "Data Source=(local);Database=北风贸易;Uid=sa;Pwd=sa";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bind(); }
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
bind();
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
sqlcon = new SqlConnection(strCon);
string sqlstr = "update 飞狐工作室 set 姓名='"
+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',家庭住址='"
+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where 身份证号码='"
+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
sqlcom = new SqlCommand(sqlstr, sqlcon);
sqlcon.Open();
sqlcom.ExecuteNonQuery();
sqlcon.Close();
GridView1.EditIndex = -1;
bind();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
bind();
}
public void bind()
{
string sqlstr = "select top 10 * from 飞狐工作室";
sqlcon = new SqlConnection(strCon);
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
DataSet myds = new DataSet();
sqlcon.Open();
myda.Fill(myds, "飞狐工作室");
GridView1.DataSource = myds;
GridView1.DataKeyNames = new string[] { "身份证号码" };
GridView1.DataBind();
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
DataRowView mydrv = myds.Tables["飞狐工作室"].DefaultView[i];
string score = Convert.ToString(mydrv["起薪"]);
if (Convert.ToDouble(score) < 34297.00)//大家这里根据具体情况设置可能ToInt32等等 {
GridView1.Rows[i].Cells[4].BackColor = System.Drawing.Color.Red;
}
}
sqlcon.Close();
}
}
<head id="Head1" runat="server">
<title>GridView突出显示某一单元格 清清月儿http://blog.csdn.net/21aspnet </title>
</head>
<body >
<form id="form1" runat="server">
<div >
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="3" OnRowEditing="GridView1_RowEditing"
OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px" >
<FooterStyle BackColor="White" ForeColor="#000066" />
<Columns>
<asp:CommandField HeaderText="编辑" ShowEditButton="True" />
<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />
<asp:BoundField DataField="姓名" HeaderText="姓名" />
<asp:BoundField DataField="出生日期" HeaderText="邮政编码" />
<asp:BoundField DataField="起薪" HeaderText="起薪" DataFormatString="{0:C}" HtmlEncode="false"/>
<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" />
<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" />
</Columns>
<RowStyle ForeColor="#000066" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" CssClass="ms-formlabel DataGridFixedHeader"/>
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
</asp:GridView>
</div> </form>
</body>
</html>
可以泛型的list
IList<string> list=new List<string>();然后在GridView 的 RowDataBound 事件中
如果是 数据行的话 就往集合中 加指定列的值
同时判断是否在集合中存在,如果存在就不加,并把对应的单元格颜色改变
<ItemTemplate>
<h3><span><%# DataBinder.Eval (Container .DataItem ,"typename") %></span></h3>
<ul>
<asp:Repeater ID="Repeater3" runat="server">
<ItemTemplate>
<li><a href="" target="_blank"><%# DataBinder.Eval (Container .DataItem ,"typename") %></a></li></ItemTemplate>
<AlternatingItemTemplate>
<li>|</li>
<li><a href="" target="_blank"> <%# DataBinder.Eval (Container .DataItem ,"typename") %></a></li>
</AlternatingItemTemplate>
</asp:Repeater>
</ul>
</ItemTemplate>
设置两种样式 替换
这样在 gridview中12 12 23 23 66 66都显示红色
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
for (int i = 0; i < e.Row.Cells.Count; i++)
{
for (int j = i + 1; j < e.Row.Cells.Count - 1; j++)
{
if (e.Row.Cells[i].Text == e.Row.Cells[j].Text)
{
e.Row.Cells[i].ForeColor = System.Drawing.Color.Red;
e.Row.Cells[j].ForeColor = System.Drawing.Color.Red;
}
}
}
}
}
<table id="GridView1" border="1">
<tr>
<td>
A
</td>
</tr>
<tr>
<td>
B
</td>
</tr>
<tr>
<td>
C
</td>
</tr>
<tr>
<td>
A
</td>
</tr>
<tr>
<td>
C
</td>
</tr>
<tr>
<td>
D
</td>
</tr>
</table>
String.prototype.Trim = function()
{
return this.replace(/(^\s*)|(\s*$)/g,"");
}
var tb = document.getElementById("GridView1");
var ary = new Object();
for(var i = 0 ;i<tb.rows.length;i++)
{
var value = tb.rows[i].cells[0].innerHTML.Trim();
if(ary[value] == null)
{
ary[value] = tb.rows[i].cells[0];
}else
{
ary[value].style.color="red";
tb.rows[i].cells[0].style.color="red"
}
}
</script>