双击GridView查看详情
效果如下:
protected void gvEquData_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//鼠标经过改变样式
e.Row.Attributes.Add("onMouseOver", "Color=this.style.backgroundColor;this.style.backgroundColor='RosyBrown'");
e.Row.Attributes.Add("onMouseOut", "this.style.backgroundColor=Color;"); e.Row.Cells[0].Text = (e.Row.RowIndex + 1).ToString();
string id = gvEquData.DataKeys[e.Row.RowIndex].Value == null ? string.Empty : gvEquData.DataKeys[e.Row.RowIndex].Value.ToString();
string url = "?id=" + id;
e.Row.Attributes.Add("ondblclick", "showDetailInfo('" + url + "');return false;"); //添加双击事件
}
}
public partial class EquStatusDetail : System.Web.UI.Page
{
int rowFields = 3;//每一行显示的字段数;
static Hashtable resources = EquStatusSearch.resources;
Dictionary<String, String> fieldNameList = EquStatusSearch.fieldNameList; protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
string id = Request.QueryString["id"];//主键
GetDetailInfo(id);
}
} public void GetDetailInfo(string id)
{
if (string.IsNullOrEmpty(id))
{
Image img = new Image();
img.CssClass = "bgNull";
img.ImageUrl = Server.MapPath("~/img/null.jpg");
Panel1.Controls.Add(img);
return;
}
DataRow dr = EquSearchBll.equBll.GetDetailEquInfoById(id);
if (dr == null)
{
Image img = new Image();
img.CssClass = "bgNull";
img.ImageUrl = Server.MapPath("~/img/null.jpg");
Panel1.Controls.Add(img);
}
if (dr != null)
{
if (string.IsNullOrEmpty(QuarrysClass.All))
{
return;
} string checkFlag = QuarrysClass.CheckFlag;
string[] fields = QuarrysClass.All.Split(',');
if (fields == null)
{
return;
} Table tb1 = new Table();
tb1.CssClass = "usertableborder";
tb1.Style.Add(HtmlTextWriterStyle.TextAlign, "left");
tb1.Style.Add(HtmlTextWriterStyle.Width, "100%");
int index = 0;
TableRow tr = null; foreach (string f in fields)
{
TableCell tc = new TableCell();
tc.Width = 150;
tc.CssClass = "usertablerow2";
TableCell tc1 = new TableCell();
tc1.CssClass = "usertablerow1";
tc1.Width = 120; if (index % rowFields == 0)
{
tr = new TableRow();
}
if (checkFlag.ToLower().IndexOf("@" + f + "@") != -1)
{
tc.Text = resources[f] == null ? string.Empty : resources[f].ToString();
string strChecked = dr[f] == null ? string.Empty : dr[f].ToString();
CheckBox cbox = new CheckBox();
cbox.Enabled = false;
if (Convert.ToInt32(QuarrysClass.DataType) == (int)EnumDataType.ACCESS)
{
if (strChecked.ToLower() == "false")
{
cbox.Checked = false;
}
else
{
cbox.Checked = true;
}
}
else
{
if (strChecked == "1")
{
cbox.Checked = true;
}
else
{
cbox.Checked = false;
}
}
tc1.Controls.Add(cbox);
tr.Cells.Add(tc);
tr.Cells.Add(tc1);
}
else
{
tc.Text = resources[f] == null ? string.Empty : resources[f].ToString();
if(QuarrysClass.Converts.ToLower().Contains(f))
{
tc1.Text=CommonClass.ConvertDateTime(dr[f]);
}
else
{
tc1.Text = dr[f] == null ? string.Empty : dr[f].ToString();
}
tr.Cells.Add(tc);
tr.Cells.Add(tc1);
}
if (index % rowFields == 0)
{
tb1.Rows.Add(tr);
}
index++;
}
Panel1.Controls.Add(tb1);
}
}
}
双击GridView查看详情的更多相关文章
- MVC5 + EF6 + Bootstrap3 (13) 查看详情、编辑数据、删除数据
Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-rud.html 系列教程:MVC5 + EF6 + Boo ...
- ajax bookstrap美化网页,并实现页面的加载,删除与查看详情
Bookstrap:美化页面: Bootstrap是Twitter推出的一个开源的用于前端开发的工具包.它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS ...
- 移动端web页面列表类上拉加载,查看详情,iframe嵌套第三方页面遇到的问题以及解决办法
1.移动端上拉加载 网上有很多成熟的插件,比如iscroll.在这里介绍一下用jquery和js写的上拉加载方法.使用原生的去写上拉加载更多需要三个高度去做对比,以新闻类列表举例,首先需要整个dom的 ...
- ajax——优化0126(增删改查:添加查看详情,返回结果类型为JSON型,在窗口显示)
效果: 鼠标点击查看详情时 数据库: 0126.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&qu ...
- Android上拉查看详情实现
京东淘宝有那么一种效果就是,上拉能够查看宝贝的详情,这里我也实现了一个类似的效果,也能够移植到商业项目上:先看看简单的效果图 实现原理事实上是利用了ScrollView的滚动和view的touch事件 ...
- ajax对数据删除、查看详情功能
运用bootstrap,jquery和ajax显示一些数据,附加删除功能并且点击能弹出模态框详情功能 主页面main.php <!DOCTYPE html PUBLIC "-//W3C ...
- linux环境中,top命令中,对command的命令进行扩展查看详情?
需求说明: 在使用top命令进行资源情况使用查看时,经常出现以下情况: 备注:也就是说,在COMMAND列中,有多个java进程,想要知道每个java具体的对应的是哪个程序的进程. 通过top命令的c ...
- Dev的双击Gridview的DoubleClick
注意: 是GridView的Double而不是GridControlprivate void gridView1_DoubleClick(object sender, EventArgs e){ ...
- android仿京东、淘宝商品详情页上拉查看详情
话不多说,直接上干货,基本就是一个scrollview中嵌套两个scrollview或者webview;关键点事处理好子scrollview和父scrollview的触摸.滑动事件已达到想要的效果.大 ...
随机推荐
- Qt下如何修改文件的时间(全平台修改)
提供一个全平台修改文件的时间的方法,希望大家喜欢 /* UTIME.C: This program uses _utime to set the * file-modification time to ...
- Android dp和sp的用法汇总
1 > dp 是跟像素密度无关的单位,也就是说在相同尺寸.但不同的分辨率的手机上,用dp标识的东西,显示的大小是一样的. sp是用于标识字体的,它不仅跟屏幕尺寸有关,还跟设置的系统字体大小有关. ...
- 如何用java比较两个时间或日期的大小
有一个字符串的时间,比如"2012-12-31 16:18:36" 与另一个时间做比较,如果前者比后者早,则返回true,否则返回false. 为此,我设计了一个方法. impor ...
- Python 第一章 基础知识
如果熟其他计算机语言,可能会习惯于每行以分号结束.Python则不同,一行就是一行,不管多少. 如果喜欢的话,可以加上分号,但是不会有任何作用(除非同一行还有更多的代码),而且这也不是同行的做法. & ...
- 在非MFC程序中使用调试宏 ASSERT(),VERIFY()和 TRACE()
游戏制作已经开始采用C++了,却鲜有人选择使用MFC.但笔者觉得的 ASSERT(),VERIFY()和 TRACE()这几个宏很好用.所以就想自己写一个版本来适应Windows平台下不同的工程类型. ...
- Putty远程登录VMware虚拟机Linux(Ubuntu12.04)
为了不至于来回在Win7和Ubuntu12.04之间来回切换,在Win7下使用VMware9.0安装了Ubuntu12.04. 首先下载Vmware9.0虚拟机软件,下载地址为:VMware-work ...
- SparkContext主构造函数代码提取
这是阅读sparkContext类的代码做的一个笔记.阅读这个类的时候,主要的任务就是搞清楚sparkContext是怎么构造的,java.C#的class的初始化都是放在一个方法中的,而scala的 ...
- 轻量级数据sqlite的C++调用示例
原文地址:http://www.cnblogs.com/kfqcome/archive/2011/06/27/2136999.html #include "stdafx.h" #i ...
- Oracle中的单引号问题
SELECT '<a href="javascript:void(0)" onclick="openWyl('''||a.aac001 FROM ac01 a; S ...
- ZOJ 2794 Just Pour the Water 【矩阵快速幂】
给你n个杯子,每次有特定的到水规则,倒m次请问最后每个被子里还有多少水 我们很容易发现每次变化的规则相同,那么可以set 一个矩阵存放 然后多次倒水就相当于矩阵相乘,在m 范围达到(1<= M ...