123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262 |
- using System;
- using System.Collections.Generic;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.Data;
- using System.Collections;
- using System.Reflection;
- namespace Ant.Service.Utilities
- {
- //public class GridViewHelper
- //{
- // #region 私有方法
- // /// <summary>
- // /// 截取内容长度
- // /// </summary>
- // /// <param name="o_Str">原字符串</param>
- // /// <param name="len">截取长度</param>
- // /// <returns>截取后字符串</returns>
- // private static string GetStrPartly(string o_Str, int len)
- // {
- // if (len == 0)
- // {
- // return o_Str;
- // }
- // else
- // {
- // if (o_Str.Length > len)
- // {
- // return o_Str.Substring(0, len) + "..";
- // }
- // else
- // {
- // return o_Str;
- // }
- // }
- // }
- // /// <summary>
- // /// 获取单元格内容
- // /// </summary>
- // /// <param name="cell">TableCell</param>
- // /// <returns>内容</returns>
- // private static string GetCellText(TableCell cell)
- // {
- // string text = cell.Text;
- // if (!string.IsNullOrEmpty(text))
- // {
- // return text;
- // }
- // foreach (System.Web.UI.Control control in cell.Controls)
- // {
- // if (control != null && control is IButtonControl)
- // {
- // IButtonControl btn = control as IButtonControl;
- // text = btn.Text.Replace("\r\n", "").Trim();
- // break;
- // }
- // if (control != null && control is ITextControl)
- // {
- // LiteralControl lc = control as LiteralControl;
- // if (lc != null)
- // {
- // continue;
- // }
- // ITextControl l = control as ITextControl;
- // text = l.Text.Replace("\r\n", "").Trim();
- // break;
- // }
- // }
- // return text;
- // }
- // /// <summary>
- // /// 设置单元格内容
- // /// </summary>
- // /// <param name="cell">TableCell</param>
- // /// <param name="maxLen">最大长度</param>
- // private static void SetCellText(TableCell cell, int maxLen)
- // {
- // string text = cell.Text;
- // if (!string.IsNullOrEmpty(text))
- // {
- // cell.Text = GetStrPartly(text, maxLen);
- // }
- // foreach (System.Web.UI.Control control in cell.Controls)
- // {
- // if (control != null && control is IButtonControl)
- // {
- // IButtonControl btn = control as IButtonControl;
- // text = btn.Text.Replace("\r\n", "").Trim();
- // btn.Text = GetStrPartly(text, maxLen);
- // break;
- // }
- // if (control != null && control is ITextControl)
- // {
- // LiteralControl lc = control as LiteralControl;
- // if (lc != null)
- // {
- // continue;
- // }
- // ITextControl l = control as ITextControl;
- // text = l.Text.Replace("\r\n", "").Trim();
- // if (l is DataBoundLiteralControl)
- // {
- // cell.Text = GetStrPartly(text, maxLen);
- // break;
- // }
- // else
- // {
- // l.Text = GetStrPartly(text, maxLen);
- // break;
- // }
- // }
- // }
- // }
- // #endregion
- // #region 公有方法
- // /// <summary>
- // /// 从GridView的数据生成DataTable
- // /// </summary>
- // /// <param name="gv">GridView对象</param>
- // public static DataTable GridView2DataTable(GridView gv)
- // {
- // DataTable table = new DataTable();
- // int rowIndex = 0;
- // List<string> cols = new List<string>();
- // if (!gv.ShowHeader && gv.Columns.Count == 0)
- // {
- // return table;
- // }
- // GridViewRow headerRow = gv.HeaderRow;
- // int columnCount = headerRow.Cells.Count;
- // for (int i = 0; i < columnCount; i++)
- // {
- // string text = GetCellText(headerRow.Cells[i]);
- // cols.Add(text);
- // }
- // foreach (GridViewRow r in gv.Rows)
- // {
- // if (r.RowType == DataControlRowType.DataRow)
- // {
- // DataRow row = table.NewRow();
- // int j = 0;
- // for (int i = 0; i < columnCount; i++)
- // {
- // string text = GetCellText(r.Cells[i]);
- // if (!String.IsNullOrEmpty(text))
- // {
- // if (rowIndex == 0)
- // {
- // string columnName = cols[i];
- // if (String.IsNullOrEmpty(columnName))
- // {
- // continue;
- // }
- // if (table.Columns.Contains(columnName))
- // {
- // continue;
- // }
- // DataColumn dc = table.Columns.Add();
- // dc.ColumnName = columnName;
- // dc.DataType = typeof(string);
- // }
- // row[j] = text;
- // j++;
- // }
- // }
- // rowIndex++;
- // table.Rows.Add(row);
- // }
- // }
- // return table;
- // }
- // /// <summary>
- // /// 将集合类转换成DataTable
- // /// </summary>
- // /// <param name="list">集合</param>
- // public static DataTable ToDataTable(IList list)
- // {
- // DataTable result = new DataTable();
- // if (list.Count > 0)
- // {
- // PropertyInfo[] propertys = list[0].GetType().GetProperties();
- // foreach (PropertyInfo pi in propertys)
- // {
- // result.Columns.Add(pi.Name, pi.PropertyType);
- // }
- // for (int i = 0; i < list.Count; i++)
- // {
- // ArrayList tempList = new ArrayList();
- // foreach (PropertyInfo pi in propertys)
- // {
- // object obj = pi.GetValue(list[i], null);
- // tempList.Add(obj);
- // }
- // object[] array = tempList.ToArray();
- // result.LoadDataRow(array, true);
- // }
- // }
- // return result;
- // }
- // /// <summary>
- // /// 将泛型集合类转换成DataTable
- // /// </summary>
- // /// <typeparam name="T">集合项类型</typeparam>
- // /// <param name="list">集合</param>
- // /// <param name="propertyName">需要返回的列的列名</param>
- // /// <returns>数据集(表)</returns>
- // public static DataTable ToDataTable<T>(IList<T> list, params string[] propertyName)
- // {
- // List<string> propertyNameList = new List<string>();
- // if (propertyName != null) propertyNameList.AddRange(propertyName);
- // DataTable result = new DataTable();
- // if (list.Count > 0)
- // {
- // PropertyInfo[] propertys = list[0].GetType().GetProperties();
- // foreach (PropertyInfo pi in propertys)
- // {
- // if (propertyNameList.Count == 0)
- // {
- // result.Columns.Add(pi.Name, pi.PropertyType);
- // }
- // else
- // {
- // if (propertyNameList.Contains(pi.Name)) result.Columns.Add(pi.Name, pi.PropertyType);
- // }
- // }
- // for (int i = 0; i < list.Count; i++)
- // {
- // ArrayList tempList = new ArrayList();
- // foreach (PropertyInfo pi in propertys)
- // {
- // if (propertyNameList.Count == 0)
- // {
- // object obj = pi.GetValue(list[i], null);
- // tempList.Add(obj);
- // }
- // else
- // {
- // if (propertyNameList.Contains(pi.Name))
- // {
- // object obj = pi.GetValue(list[i], null);
- // tempList.Add(obj);
- // }
- // }
- // }
- // object[] array = tempList.ToArray();
- // result.LoadDataRow(array, true);
- // }
- // }
- // return result;
- // }
- // #endregion
- //}
- }
|