有在论坛上看到一个问题,就是在Gridview控件中,需要对几个列的数值进行比较,原问题如下:

先在数据库中准备数据:

CREATE TABLE [dbo].[RecordTime]
(
Id INT IDENTITY(1,1) PRIMARY KEY,
Time1 DATETIME,
Time2 DATETIME,
Time3 DATETIME,
Time4 DATETIME
)
GO
INSERT INTO [dbo].[RecordTime] VALUES ('2015-05-11 09:48','2015-05-20 10:08','2015-05-13 14:48','2015-05-19 08:48'),
('2015-05-10 14:48','2015-05-01 10:02','2015-05-20 12:48','2015-05-20 10:20'),
('2015-05-20 10:31','2015-05-03 10:40','2015-05-14 10:40','2015-05-25 09:48')
GO CREATE PROCEDURE [dbo].[usp_RecordTime_GetAll]
AS
SELECT [Id],[Time1],[Time2],[Time3],[Time4] FROM [dbo].[RecordTime]
GO

在aspx网页上写好GridView控件:

然后可以在.aspx.cs代码页中实现OnRowDataBound="GridView1_RowDataBound"事件:

.aspx.cs代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Insus.NET;
using System.Data;
using System.Drawing; public partial class _Default : System.Web.UI.Page
{
RecordTime rt = new RecordTime();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
Data_Binding();
} private void Data_Binding()
{
this.GridView1.DataSource = rt.GetRecordTime();
this.GridView1.DataBind();
} protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType != DataControlRowType.DataRow) return; DataRowView drv = (DataRowView)e.Row.DataItem;
List<DateTime> lDT = new List<DateTime>();
lDT.Add(Convert.ToDateTime(drv["Time1"]));
lDT.Add(Convert.ToDateTime(drv["Time2"]));
lDT.Add(Convert.ToDateTime(drv["Time3"]));
lDT.Add(Convert.ToDateTime(drv["Time4"]));
DateTime dt = lDT.Max<DateTime>();
int i = lDT.IndexOf(dt); int actualIdx = i + ; e.Row.Cells[actualIdx].ForeColor = Color.FromName("red");
}
}

运行得到的效果:

在Gridview如何进行每行单元格比较的更多相关文章

  1. GridView控件点击单元格如何获取该列的列标题

    本博文Insus.NET教你实现在GridView控件中,用mouse点击某单元格之后,希望能获取到该列的列标题. 创建一个网页,创建一个GridView控件: 去cs绑定数据给GridView控件: ...

  2. 实现GridControl的行单元格非顺序跳转

    用GridControl控件添加数据的时候发现,有一些字段过多但是并不是每个字段都需要用户输入,每个单元格都回车跳转的时候不仅浪费时间,而且用户体验也不好,就需要单元格跳转的时候,不需要的字段可以隔过 ...

  3. SAP ABAP ALV 颜色设置(两个ALV函数例子) 列 行 单元格

    @[TOC](设置ALV颜色)# 前言淦! 要求花花绿绿的ALV ,那就淦他! 需要的参数和对应颜色放在最后.稍微改改就能用. 介绍两个常用的ALV函数实现1.REUSE_ALV_GRID_DISPL ...

  4. FineUI大版本升级,外置ExtJS库、去AXD化、表格合计行、表格可编辑单元格的增删改、顶部菜单框架

    这是一篇很长的文章,在开始正文之前,请允许我代表目前排名前 20 中唯一的 .Net 开源软件 FineUI 拉下选票: 投票地址: https://code.csdn.net/2013OSSurve ...

  5. Gridview实现突出显示某一单元格的方法

    GridView突出显示某一单元格(例如金额低于多少,分数不及格等) 效果图: 解决方案:主要是绑定后过滤 GridView1.DataBind();        for (int i = 0; i ...

  6. gridview合并相同的行

    #region 方法:合并Gridview行    /// <summary>    /// 合并GridView指定行单元格    /// </summary>    /// ...

  7. c# WinForm开发 DataGridView控件的各种操作总结(单元格操作,属性设置)

    一.单元格内容的操作 *****// 取得当前单元格内容 Console.WriteLine(DataGridView1.CurrentCell.Value); // 取得当前单元格的列 Index ...

  8. POI导出Excel--合并单元格

    package com.test.util; import java.io.FileNotFoundException; import java.io.FileOutputStream; import ...

  9. PHPExcel合并与拆分单元格

      $objPHPExcel; $filepath="c:\temp.xlsx"; try { $objReader = PHPExcel_IOFactory::createRea ...

随机推荐

  1. [ACM_动态规划] 嵌套矩形

    问题描述:有n个矩阵,每个矩阵可以用两个整数a,b来表示 ,表示他的长和宽,矩阵X (a,b) 可以 嵌套 到Y (c,d) 里面当且仅当 a < c &&  b < d  ...

  2. Java中测试异常的多种方式

    使用JUnit来测试Java代码中的异常有很多种方式,你知道几种? 给定这样一个class. Person.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...

  3. Spring-Context之七:使用p-namesapce和c-namespace简化bean的定义

    在Spring中定义bean的方式多种多样,即使使用xml的方式来配置也能派生出很多不同的方式. 比如如下的bean定义: 1 2 3 4 5 6 7 8 9 10 11 12 <beans x ...

  4. JS中的闭包

    在复习JS高程的过程中,在第七章闭包那节,发现自己看不太明白了.之前看高程的时候,都弄得挺清楚了,怎么现在反而又看不懂了. 嗯,也许更深层次的东西涉及到编译原理的知识了.嗯,在研究完SPA后就开始学习 ...

  5. IoC组件Unity再续~根据类型字符串动态生产对象

    回到目录 这个根据类型字符串动态去生产一个接口的对象,在实现项目中用途很广,这即省去了配置config文件的麻烦,又使用生产对象变更可配置,你完全可以把这种多态持久化到数据库里或者XML文件里,在使用 ...

  6. 我所了解的chrome

    Chrome的隐身模式 先来说说隐身模式的启用方法吧 1.键盘快捷:Ctrl + Shift + N. 2.在Windows7下的任务栏处,右击“Chrome”图标,会出一个下拉菜单,点击“新建隐身窗 ...

  7. iOS-Delegate模式

    代理模式 顾名思义就是委托别人去做事情. IOS中经常会遇到的两种情况:在cocoa框架中的Delegate模式与自定义的委托模式.下面分别举例说明一下: 一.cocoa框架中的delegate模式 ...

  8. NPM安装之后CMD中不能使用

    NPM安装之后CMD中不能使用 这个情况就是path环境变量没有添加NPM 添加环境变量并重启CMD C:\Users\Mark\AppData\Roaming\npm\ 看看这个文件夹就知道为什么要 ...

  9. c# BlowFish 高速 对称加密

    BlowFish 高速 对称加密 string key = "this is my key"; BlowFish algo = new BlowFish(key); string ...

  10. Oracle 11g系列:视图

    视图是数据库中特有的对象,视图用于存储查询,但不会存储数据(物化视图除外).这是视图和数据表的重要区别.Oracle中有4种视图:关系视图.内嵌视图.对象视图和物化视图. 1.关系视图 1>.创 ...