protected void Page_Load(object sender, EventArgs e) { client = new MyServiceClient(); roles = client.SelectAllRoles(); // הגדרת עמודות columns = new GridViewColumnDefinitions(); columns.Add(new GridViewColumnDefinition( "Name", "שם תפקיד", ColumnType.STRING_COLUMN, ColumnAligment.CENTER ) ); if (!IsPostBack) { // גריד עם אפשרויות עריכה GridViewUtilities.SetColumns <Role>( // Grid-הטיפוס המוצג ב grdCities, // Grid-שם ה roles, // רשימת הישובים columns, // רשימת העמודות 20, // Grid-רוחב ה true // לכלול עמודת עריכה ); } }
/// <summary> /// /// </summary> /// <param name="tbl">אליו מוסיפים את כותרום העמודות Table-ה</param> /// <param name="columns">אוסף העמודות</param> /// <param name="gridWidth">%-רוחב הגריד ב</param> /// <param name="addCommandColumn">האם להוסיף עמודת עריכה</param> public static void SetGridviewHeader(Table tbl, GridViewColumnDefinitions columns, double gridWidth, bool addCommandColumn = false) { TableCell cell; double columnWidth = (gridWidth - EDIT_COLUMN_PERCENT) / columns.Count; if (addCommandColumn) { cell = new TableCell(); cell.Text = "עריכה"; cell.HorizontalAlign = HorizontalAlign.Center; cell.VerticalAlign = VerticalAlign.Middle; cell.Width = new Unit(EDIT_COLUMN_PERCENT, UnitType.Percentage); tbl.Rows[0].Cells.Add(cell); } foreach (GridViewColumnDefinition col in columns) { cell = new TableCell(); cell.Text = col.ColumnHeader; cell.HorizontalAlign = HorizontalAlign.Center; cell.VerticalAlign = VerticalAlign.Middle; cell.Width = new Unit(columnWidth, UnitType.Percentage); tbl.Rows[0].Cells.Add(cell); } }
/// <summary> /// GridView-קביעת העמודות ב /// </summary> /// <param name="grd">אליו מוסיפים עמודות GridView-ה</param> /// <param name="columns">אוסף העמודות</param> /// <param name="gridWidth">%-רוחב הגריד ב</param> /// <param name="addCommandColumn">האם להוסיף עמודת עריכה</param> public static void SetColumns(GridView grd, GridViewColumnDefinitions columns, double gridWidth, bool addCommandColumn = false) { BoundField boundColumn; double columnWidth = (gridWidth - EDIT_COLUMN_PERCENT) / columns.Count; grd.AutoGenerateColumns = false; if (addCommandColumn) { CommandField cField = new CommandField(); cField.ButtonType = ButtonType.Image; cField.ItemStyle.Width = new Unit(EDIT_COLUMN_PERCENT, UnitType.Percentage); cField.ControlStyle.Width = new Unit(15, UnitType.Pixel); cField.EditImageUrl = "~/Images/Edit_Icon.png"; cField.EditText = "שינוי"; cField.DeleteImageUrl = "~/Images/Delete_Icon.png"; cField.EditText = "מחיקה"; cField.UpdateImageUrl = "~/Images/OK_Icon.png"; cField.EditText = "עדכון"; cField.CancelImageUrl = "~/Images/Cancel_Icon.png"; cField.EditText = "ביטול"; cField.SelectImageUrl = "~/Images/Select_Icon.png"; cField.EditText = "בחירה"; cField.ShowEditButton = true; cField.ShowDeleteButton = true; //cField.ShowSelectButton = true; grd.Columns.Add(cField); } foreach (GridViewColumnDefinition col in columns) { if (col.ColumnType == ColumnType.PICTURE_COLUMN) { ImageField imageField = new ImageField(); imageField.DataImageUrlField = col.ColumnName; imageField.HeaderText = col.ColumnHeader; imageField.HeaderStyle.HorizontalAlign = HorizontalAlign.Center; imageField.HeaderStyle.VerticalAlign = VerticalAlign.Middle; imageField.DataImageUrlFormatString = @"~\Images\Upload\{0}"; imageField.AlternateText = "תמונה"; imageField.NullDisplayText = "חסרה תמונה"; imageField.ItemStyle.HorizontalAlign = HorizontalAlign.Center; imageField.ItemStyle.VerticalAlign = VerticalAlign.Middle; imageField.ItemStyle.Width = new Unit(columnWidth, UnitType.Percentage);; imageField.ControlStyle.Width = new Unit(col.PictureSize.Width, UnitType.Pixel); imageField.ControlStyle.Height = new Unit(col.PictureSize.Height, UnitType.Pixel); grd.Columns.Add(imageField); } else { boundColumn = new BoundField(); if (col.ColumnType == ColumnType.CHECKBOX_COLUMN) { boundColumn = new CheckBoxField(); } boundColumn.DataField = col.ColumnName; boundColumn.HeaderText = col.ColumnHeader; boundColumn.HeaderStyle.HorizontalAlign = HorizontalAlign.Center; boundColumn.HeaderStyle.VerticalAlign = VerticalAlign.Middle; boundColumn.ItemStyle.Width = new Unit(columnWidth, /* grd.Width.Value / columns.Count, */ UnitType.Percentage); boundColumn.ItemStyle.VerticalAlign = VerticalAlign.Middle; switch (col.ColumnAligment) { case ColumnAligment.CENTER: { boundColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Center; break; } case ColumnAligment.LEFT: { boundColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Left; break; } case ColumnAligment.RIGHT: { boundColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Right; break; } } grd.Columns.Add(boundColumn); } } }
/// <summary> /// קביעת העמודות המוצגות בטבלה /// </summary> /// <param name="grd">הטבלה לעיבוד העמודות</param> /// <param name="data">המכיל את הנתונים להצגה LIST</param> /// <param name="columns">מערך דו מימדי של מחרוזות המתארות את העמודות לתצוגה</param> /// <param name = "configDataGridView">האם לעצב את הטבלה</param> public static void SetColumns <T>(GridView grd, List <T> data, GridViewColumnDefinitions columns, int gridWidth, bool addCommandColumn = false) { grd.DataSource = data; SetColumns(grd, columns, gridWidth, addCommandColumn); grd.DataBind(); }