当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > DataGrid中单元格的比较

ASP.NET
aspnet_regsql不能在sql2005下使用的解决
.NET发送邮件
让.Net验证控件与自定义验证合作无间
给.Net程序员和WEB程序员建议:.Net篇
给.Net程序员和WEB程序员建议:WEB篇
Server Application Unavailable错误解决方法
ASP.NET AJAX:UpdatePanel控件
ASP.NET教程:Ref和Out关键字异同
组件Newtonsoft.Json实现object2json转换
ASP.NET教程:Control基类清理页面状态
ASP.NET入门教程:认识ASP.NET
ASP.NET入门教程:ASP.NET和ASP区别
ASP.NET入门教程:简单的ASP.NET页面
ASP.NET入门教程:服务器控件
ASP.NET入门教程:事件句柄
ASP.NET入门教程:Web表单
ASP.NET入门教程:Web表单维持对象的ViewState
ASP.NET入门教程:TextBox控件
ASP.NET入门教程:Button控件
ASP.NET入门教程:数据绑定

ASP.NET 中的 DataGrid中单元格的比较


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 193 ::
收藏到网摘: n/a

【分享】DataGrid中单元格的比较

搞了近半个小时,才测试出来。
以为Asp.NET中DataGrid的行表示也是DataRow.
死活就找不出来。
后来看到有个DataGridItemCollection和DataGridItem
后者的提示为DataGrid的项(行).

于是用了这句:

int i = dgCourse.Items.Count; // dgCourse 为DataGrid实例

返回i的值为具体的行数,well,总算找到行了。
但行中的列要进行比较怎么办?
又想起DataColumn
在DataGrid中有个 DataGrid.Columns
但那只针对所有的列,不能进行单行的列比较。
于是在 DataGrid.Item中去找,
发现有个 DataGrid.Item.Cells 的东东,提示说“DataGrid项的单元格”
well.应该就是它了,取两个index并将string转换成int来比较看看


int courseCount = 0;
int coursePeo = 0;
foreach(DataGridItem di in dgCourse.Items) // DataGridItem 表示 DataGrid中的行
{
courseCount = int.Parse(di.Cells[5].Text); // DataGridItem.Cells[5] 表示 行中的第6个单元格
coursePeo = int.Parse(di.Cells[6].Text);
if(courseCount <= coursePeo) // 单元格进行比较
{
di.Cells[6].ForeColor = System.Drawing.Color.Red;//若不大于显示红色

}
}