亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

ASPxGridView-單元格合并

2019-11-17 01:52:40
字體:
來源:轉載
供稿:網友

aspxGridView-單元格合并

<dx:ASPxGridView ID="gridView" runat="server" ClientInstanceName="gvResults" Width="550px" AutoGenerateColumns="True" KeyFieldName="OrderID" DataSourceID="accessDataSource1"></dx:ASPxGridView><asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/nwind.mdb" SelectCommand="SELECT * FROM [Orders]"></asp:AccessDataSource>

<script type="text/javascript"> window.__OriginalDXUpdateRowCellsHandler = ASPxClientTableFixedColumnsHelper.PRototype.ChangeCellsVisibility; ASPxClientTableFixedColumnsHelper.prototype.ChangeCellsVisibility = function(row, startIndex, endIndex, display) { if((row.cells.length == 0) || (row.cells[0].getAttribute("ci") == null)) window.__OriginalDXUpdateRowCellsHandler(row, startIndex, endIndex - 1, display); // base call else { //custom processing for(var i = startIndex; i <= endIndex; i++) { var cell = FindCellWithColumnIndex(row, i); if(cell != null) cell.style.display = display; } } }; function FindCellWithColumnIndex(row, colIndex) { for(var i = 0; i < row.cells.length; i++) { if(row.cells[i].getAttribute("ci") == colIndex) return row.cells[i]; } return null; }=================================

protected void Page_Load(object sender, EventArgs e) { if (!(IsPostBack || IsCallback)) gridView.DataBind(); new ASPxGridViewCellMerger(gridView); gridView.Columns[0].FixedStyle = GridViewColumnFixedStyle.Left; gridView.Columns[1].FixedStyle = GridViewColumnFixedStyle.Left; gridView.Columns[0].CellStyle.BackColor = Color.FromArgb(0xEE, 0xEE, 0xEE); gridView.Columns[1].CellStyle.BackColor = Color.FromArgb(0xEE, 0xEE, 0xEE); gridView.Settings.ShowHorizontalScrollBar = true; }

===========CellMerger.cs=====================

using System;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using DevExpress.Web.ASPxGridView;using System.Collections.Generic;public class ASPxGridViewCellMerger { ASPxGridView grid; Dictionary<GridViewDataColumn, TableCell> mergedCells = new Dictionary<GridViewDataColumn, TableCell>(); Dictionary<TableCell, int> cellRowSpans = new Dictionary<TableCell, int>(); public ASPxGridViewCellMerger(ASPxGridView grid) { this.grid = grid; Grid.HtmlRowCreated += new ASPxGridViewTableRowEventHandler(grid_HtmlRowCreated); Grid.HtmlDataCellPrepared += new ASPxGridViewTableDataCellEventHandler(grid_HtmlDataCellPrepared); } public ASPxGridView Grid { get { return grid; } } void grid_HtmlDataCellPrepared(object sender, ASPxGridViewTableDataCellEventArgs e) { //add the attribute that will be used to find which column the cell belongs to e.Cell.Attributes.Add("ci", e.DataColumn.VisibleIndex.ToString()); if (cellRowSpans.ContainsKey(e.Cell)) { e.Cell.RowSpan = cellRowSpans[e.Cell]; } } void grid_HtmlRowCreated(object sender, ASPxGridViewTableRowEventArgs e) { if (Grid.GetRowLevel(e.VisibleIndex) != Grid.GroupCount) return; for (int i = e.Row.Cells.Count - 1; i >= 0; i--) { DevExpress.Web.ASPxGridView.Rendering.GridViewTableDataCell dataCell = e.Row.Cells[i] as DevExpress.Web.ASPxGridView.Rendering.GridViewTableDataCell; if (dataCell != null) { MergeCells(dataCell.DataColumn, e.VisibleIndex, dataCell); } } } void MergeCells(GridViewDataColumn column, int visibleIndex, TableCell cell) { bool isNextTheSame = IsNextRowHasSameData(column, visibleIndex); if (isNextTheSame) { if (!mergedCells.ContainsKey(column)) { mergedCells[column] = cell; } } if (IsPrevRowHasSameData(column, visibleIndex)) { ((TableRow)cell.Parent).Cells.Remove(cell); if (mergedCells.ContainsKey(column)) { TableCell mergedCell = mergedCells[column]; if (!cellRowSpans.ContainsKey(mergedCell)) { cellRowSpans[mergedCell] = 1; } cellRowSpans[mergedCell] = cellRowSpans[mergedCell] + 1; } } if (!isNextTheSame) { mergedCells.Remove(column); } } bool IsNextRowHasSameData(GridViewDataColumn column, int visibleIndex) { //is it the last visible row if (visibleIndex >= Grid.VisibleRowCount - 1) return false; return IsSameData(column.FieldName, visibleIndex, visibleIndex + 1); } bool IsPrevRowHasSameData(GridViewDataColumn column, int visibleIndex) { ASPxGridView grid = column.Grid; //is it the first visible row if (visibleIndex <= Grid.VisibleStartIndex) return false; return IsSameData(column.FieldName, visibleIndex, visibleIndex - 1); } bool IsSameData(string fieldName, int visibleIndex1, int visibleIndex2) { // is it a group row? if (Grid.GetRowLevel(visibleIndex2) != Grid.GroupCount) return false; return object.Equals(Grid.GetRowValues(visibleIndex1, fieldName), Grid.GetRowValues(visibleIndex2, fieldName)); }}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲va男人天堂| 精品视频在线播放| 成人在线小视频| 日韩大陆欧美高清视频区| 91日本在线视频| 国产aaa精品| 91成人在线观看国产| 97在线视频免费播放| 亚洲成人激情小说| 日韩免费看的电影电视剧大全| 日韩欧美在线网址| 欧美电影免费观看| 成人亚洲欧美一区二区三区| 九九久久精品一区| 97精品免费视频| 欧美日韩一区二区精品| 欧美精品在线看| 91亚洲精品一区二区| 久久久久久国产精品| 一本色道久久综合狠狠躁篇怎么玩| www亚洲精品| 精品高清一区二区三区| 亚洲高清在线观看| 98视频在线噜噜噜国产| 久久久久国产精品免费网站| 色综合视频一区中文字幕| 久久艳片www.17c.com| 性色av一区二区三区免费| 一区二区av在线| 日韩网站免费观看| 国产精品私拍pans大尺度在线| 日本欧美爱爱爱| 91高潮在线观看| 色噜噜狠狠色综合网图区| 国产日韩在线看| 成人黄色中文字幕| 久久精品人人做人人爽| 亚洲综合小说区| 91久久夜色精品国产网站| 久久精品国产久精国产一老狼| 亚洲综合在线播放| 91精品久久久久久久| 全球成人中文在线| 日韩精品久久久久| 国产精品白嫩初高中害羞小美女| 色婷婷成人综合| 欧美猛男性生活免费| 色妞欧美日韩在线| 国产精品久久久久久久久久久久久久| 亚洲另类xxxx| 国产欧美日韩免费看aⅴ视频| 欧美激情精品在线| 欧美激情视频免费观看| 国产精品亚洲综合天堂夜夜| 欧美精品videos| 久久99精品久久久久久噜噜| 国产精品男人爽免费视频1| 亚洲最新av在线网站| 欧美日韩精品在线视频| 欧美又大又硬又粗bbbbb| 欧美xxxx14xxxxx性爽| 精品视频偷偷看在线观看| 狠狠色狠色综合曰曰| 久久久久久久久网站| 色与欲影视天天看综合网| 北条麻妃久久精品| 欧美在线视频观看免费网站| 久热精品在线视频| 自拍偷拍亚洲在线| 欧美三级欧美成人高清www| 日韩高清电影免费观看完整| 成人黄色免费看| 中文字幕精品影院| 91香蕉国产在线观看| 国产视频精品一区二区三区| 性欧美xxxx视频在线观看| 色偷偷av一区二区三区| 992tv成人免费影院| 亚洲精品一区av在线播放| 国产精品久久999| 久久在线精品视频| 久久婷婷国产麻豆91天堂| 亚洲美女av黄| 欧美夫妻性视频| 日韩精品在线视频美女| 亚洲精品美女久久久久| 在线观看国产精品淫| 亚洲成**性毛茸茸| 精品性高朝久久久久久久| 国产精品丝袜高跟| 九九久久综合网站| 中文字幕日韩免费视频| 国产精品久久久久久影视| 国产一区二区三区三区在线观看| 一区二区亚洲欧洲国产日韩| 日韩中文在线视频| 中国日韩欧美久久久久久久久| 欧美日韩亚洲成人| 国产精品福利在线观看网址| 亚洲激情 国产| 亚洲精美色品网站| 久久久亚洲影院| 欧美激情va永久在线播放| 精品久久久久久久久久久| 欧美成人精品不卡视频在线观看| 欧美乱大交xxxxx另类电影| 亚洲精品一二区| 国产精品久久久久久久电影| 久久久久久91香蕉国产| 亚洲免费福利视频| 国产精品女视频| 国内揄拍国内精品少妇国语| 欧美丰满少妇xxxxx| 欧美性猛交xxxx乱大交极品| 92看片淫黄大片欧美看国产片| 91亚洲精品久久久久久久久久久久| 在线精品播放av| 综合136福利视频在线| 久久综合伊人77777| 在线播放亚洲激情| 欧美成人精品激情在线观看| 午夜精品一区二区三区在线视频| 在线观看视频99| 81精品国产乱码久久久久久| 欧美大尺度激情区在线播放| 日韩高清电影好看的电视剧电影| 亚洲精品视频网上网址在线观看| 日韩有码在线观看| 国产亚洲欧美另类中文| 色综合色综合久久综合频道88| 色综合久综合久久综合久鬼88| 92看片淫黄大片欧美看国产片| 日本久久91av| 欧美不卡视频一区发布| 69av视频在线播放| 亚洲人成网站999久久久综合| 2019最新中文字幕| 国产精品伦子伦免费视频| 国产欧美精品xxxx另类| 国产精品一区二区三区久久| 亚洲色图日韩av| 国产成人一区二| 亚洲字幕在线观看| 91高潮精品免费porn| 91国内揄拍国内精品对白| 精品久久久久久中文字幕| 日本久久久久亚洲中字幕| 中文字幕日韩有码| 欧美午夜片欧美片在线观看| 国产精品∨欧美精品v日韩精品| 欧洲亚洲免费视频| 欧美激情视频播放| 久久久久久久网站| 精品视频在线播放| www.美女亚洲精品| 亚洲影视九九影院在线观看| 国产精品视频久久久久| 国产日韩在线免费| 国产99久久久欧美黑人| 亚洲电影中文字幕| www.欧美精品一二三区| 大伊人狠狠躁夜夜躁av一区| 欧美电影《睫毛膏》| 亚洲精品美女久久|