public void bind() { SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["connectionString"]); SqlDataAdapter da = new SqlDataAdapter("Select * from Customers",con); DataTable dt = new DataTable("Customers"); da.Fill(dt); if(DataGrid1.Attributes["SortOn"]!=null) dt.DefaultView.Sort=DataGrid1.Attributes["SortOn"]; BoundColumn col = new BoundColumn(); col.ReadOnly=true; col.HeaderText="SL NO."; DataGrid1.Columns.AddAt(0,col); TemplateColumn col1 = new TemplateColumn(); col1.ItemTemplate =LoadTemplate("ItemTemplate.ascx"); col1.HeaderText="template - from ascx"; DataGrid1.Columns.Add(col1); //E.Item.Cells[0].Text= E.Item.DataSetIndex + 1; //http://www.dotnetbips.com/displayarticle.aspx?id=84 //http://www.dotnetbips.com/displayarticle.aspx?id=85 TemplateColumn col2 = new TemplateColumn(); col2.HeaderText = "template - from code"; col2.ItemTemplate = new CTemplateColumn("Customer_Name"); DataGrid1.Columns.Add(col2); DataGrid1.DataSource=dt.DefaultView; //next 2 lines to check if the pageindex is greater than noof pages when records are deleted from DB double actualPageCount = Math.Ceiling(dt.Rows.Count / (double)DataGrid1.PageSize); if(DataGrid1.CurrentPageIndex>=actualPageCount) DataGrid1.CurrentPageIndex =(int)actualPageCount - 1; DataGrid1.DataBind(); }
private void Page_Load(object sender, System.EventArgs e) { //Put user code to initialize the page here System.Web.UI.HtmlControls.HtmlForm frm = (HtmlForm)this.FindControl("Form1"); GHTTestBegin(frm); GHTActiveSubTest = GHTSubTest1; try { DataGrid1.DataSource = GHTTests.GHDataSources.DSDataTable(); System.Web.UI.WebControls.TemplateColumn c1 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c2 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c3 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c4 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c5 = new System.Web.UI.WebControls.TemplateColumn(); c1.ItemTemplate = new t_DBLitTemplate(); c2.ItemTemplate = new t_DBLitTemplate(); c3.ItemTemplate = new t_DBLitTemplate(); c4.ItemTemplate = new t_DBLitTemplate(); c5.ItemTemplate = new t_DBLitTemplate(); c1.EditItemTemplate = new t_EmptyLitTemplate(); c2.EditItemTemplate = new t_PlainTextLitTemplate(); c3.EditItemTemplate = new t_HtmlLitTemplate(); c4.EditItemTemplate = new t_ControlLitTemplate(); c5.EditItemTemplate = new t_DBLitTemplate(); DataGrid1.Columns.Add(c1); DataGrid1.Columns.Add(c2); DataGrid1.Columns.Add(c3); DataGrid1.Columns.Add(c4); DataGrid1.Columns.Add(c5); DataGrid1.EditItemIndex = 2; DataGrid1.DataBind();; } catch (Exception ex) { GHTSubTestUnexpectedExceptionCaught(ex); } GHTActiveSubTest = Ghtsubtest2; try { DataGrid2.DataSource = GHTTests.GHDataSources.DSDataTable(); DataGrid2.EditItemIndex = 2; DataGrid2.DataBind();; } catch (Exception ex) { GHTSubTestUnexpectedExceptionCaught(ex); } GHTTestEnd(); }
public void AddTemplateColumn(string colText, string lblName) { TemplateColumn col = new TemplateColumn(); col.ItemTemplate = new CreateItemTemplateLabel(colText, lblName); col.HeaderText = String.Format("<strong>{0}</strong>", lblName); col.HeaderStyle.CssClass = "ms-TPHeader"; col.ItemStyle.CssClass = "ms-alternating"; this.Columns.Add(col); }
/// <summary> /// Agrega una nueva columna de plantilla al objeto DataGrid /// </summary> /// <param name="MyDataGrid">Objeto DataGrid a modificar</param> /// <param name="myDatatable">Objeto DataTable con los datos</param> /// <param name="nombreColumna">Nombre de la columna a incluir</param> /// <param name="control">Control a insertar en la nueva columna</param> /// <param name="tipo_item">Tipo de control a insertar en la columna</param> /// <remarks> /// <list> Creado: Diciembre 10 de 2013 - Ing. David Alejandro Pineda Diaz </list> /// </remarks> public static void addItemColumnToGrid(ref DataGrid MyDataGrid, DataTable myDatatable, string nombreColumna, System.Web.UI.Control control, ListItemType tipo_item) { try { TemplateColumn columna = new TemplateColumn(); columna.HeaderTemplate = new DataGridTemplate(ListItemType.Header, nombreColumna); columna.ItemTemplate = new DataGridTemplate(tipo_item, control); MyDataGrid.Columns.Add(columna); updateGrid(ref MyDataGrid, myDatatable); } catch (Exception ex) { throw ex; } }
protected void OnInit(object sender, System.EventArgs e) { TemplateColumn tpl = new TemplateColumn(); tpl.ItemStyle.Wrap = false; tpl.ItemStyle.CssClass = "tabDetailViewDL"; tpl.ItemTemplate = new CreateItemTemplateTranslated("DISPLAY_NAME"); this.Columns.Add(tpl); //AppendACLColumn("ACLACCESS_ADMIN" , "admin" ); AppendACLColumn("ACLActions.LBL_ACTION_ACCESS", "ACLACCESS_ACCESS", "access"); AppendACLColumn("ACLActions.LBL_ACTION_VIEW" , "ACLACCESS_VIEW" , "view" ); AppendACLColumn("ACLActions.LBL_ACTION_LIST" , "ACLACCESS_LIST" , "list" ); AppendACLColumn("ACLActions.LBL_ACTION_EDIT" , "ACLACCESS_EDIT" , "edit" ); AppendACLColumn("ACLActions.LBL_ACTION_DELETE", "ACLACCESS_DELETE", "delete"); AppendACLColumn("ACLActions.LBL_ACTION_IMPORT", "ACLACCESS_IMPORT", "import"); AppendACLColumn("ACLActions.LBL_ACTION_EXPORT", "ACLACCESS_EXPORT", "export"); }
/// <summary> /// 得到相应的字段列表 /// </summary> /// <returns></returns> private ArrayList GetBoundColumnField() { System.Collections.ArrayList __arraylist = new ArrayList(); foreach (DataGridColumn o in this.Columns) { System.Web.UI.WebControls.BoundColumn __boundcolumn = o as System.Web.UI.WebControls.BoundColumn; if (__boundcolumn != null) { __arraylist.Add(__boundcolumn.DataField); } else { System.Web.UI.WebControls.TemplateColumn __templatecolumn = o as System.Web.UI.WebControls.TemplateColumn; __arraylist.Add(__templatecolumn.HeaderText); } } return(__arraylist); }
private DataGridColumn c_template(string se) { TemplateColumn column1 = new TemplateColumn(); column1.ItemTemplate = new DataGridColumn_SortExpression.t_DBLitTemplate(); column1.SortExpression = se; return column1; }
/// <summary> /// 增加首个模版列,可以有选择功能。 /// </summary> private void SetCheckColumnInfo() { if (tm == null) { tm = new TemplateColumn(); ColumnTemplate ItemTemplate = new ColumnTemplate(); ItemTemplate.IsMoreSelect = ClientSelectMode; tm.ItemTemplate = ItemTemplate; ColumnTemplate2 tmHead = new ColumnTemplate2(); tmHead.IsMoreSelect = this.ClientSelectMode;// m_ClientSelectMode; tmHead.CheckAllText = this.CheckHeaderText;//"全选"; tm.HeaderTemplate = tmHead; tm.HeaderText = this.CheckHeaderText; tm.Visible = this.ShowCheckColumn; //tm.HeaderStyle.Width=100; if (this.Columns.Count > 0) { if (this.Columns[0] is TemplateColumn) { this.Columns.RemoveAt(0); } } this.Columns.AddAt(0, tm); } else { ColumnTemplate ItemTemplate = (ColumnTemplate)tm.ItemTemplate; ItemTemplate.IsMoreSelect = this.ClientSelectMode; //tm.ItemTemplate=ItemTemplate; ColumnTemplate2 tmHead = (ColumnTemplate2)tm.HeaderTemplate; tmHead.CheckAllText = this.CheckHeaderText;// "全选2"; tmHead.IsMoreSelect = ClientSelectMode; tm.HeaderText = this.CheckHeaderText; tm.Visible = this.ShowCheckColumn; } }
private void SetUpUsersGrid() { if (userPermissionsGrid != null) { userPermissionsGrid.Columns.Clear(); var textCol = new BoundColumn(); textCol.HeaderText = " "; textCol.DataField = "DisplayName"; textCol.ItemStyle.Width = Unit.Parse("150px"); textCol.ItemStyle.HorizontalAlign = HorizontalAlign.Right; userPermissionsGrid.Columns.Add(textCol); var idCol = new BoundColumn(); idCol.HeaderText = ""; idCol.DataField = "userid"; idCol.Visible = false; userPermissionsGrid.Columns.Add(idCol); TemplateColumn templateCol; foreach (PermissionInfo objPermission in _permissions) { templateCol = new TemplateColumn(); var columnTemplate = new PermissionTriStateTemplate(); columnTemplate.DataField = objPermission.PermissionName; columnTemplate.EnabledField = objPermission.PermissionName + "_Enabled"; columnTemplate.SupportDenyMode = SupportsDenyPermissions(objPermission); templateCol.ItemTemplate = columnTemplate; string locName = ""; if (objPermission.ModuleDefID > 0) { if (!String.IsNullOrEmpty(ResourceFile)) { //custom permission locName = Localization.GetString(objPermission.PermissionName + ".Permission", ResourceFile); } } else { //system permission locName = Localization.GetString(objPermission.PermissionName + ".Permission", PermissionProvider.Instance().LocalResourceFile); } templateCol.HeaderText = !String.IsNullOrEmpty(locName) ? locName : objPermission.PermissionName; templateCol.HeaderStyle.VerticalAlign = VerticalAlign.Bottom; templateCol.ItemStyle.HorizontalAlign = HorizontalAlign.Center; templateCol.ItemStyle.Width = Unit.Parse("70px"); templateCol.HeaderStyle.Wrap = true; userPermissionsGrid.Columns.Add(templateCol); } } }
public static void Validation_Load (Page p) { string testType = (string)WebTest.CurrentTest.UserData; DataGridTest dg = new DataGridTest (); dg.ID = "mygrid"; EditCommandColumn e; e = new EditCommandColumn (); e.ButtonType = ButtonColumnType.LinkButton; e.CancelText = "Cancel"; e.EditText = "Edit"; e.UpdateText = "Update"; switch (testType) { case "ValidatingValid": case "ValidatingInvalid": case "ValidationGroupIncluded": case "ValidationGroupNotIncluded": e.CausesValidation = true; break; case "NotValidatingInvalid": e.CausesValidation = false; break; } switch (testType) { case "ValidationGroupIncluded": case "ValidationGroupNotIncluded": e.ValidationGroup = "Group1"; break; default: e.ValidationGroup = ""; break; } dg.Columns.Add (e); TextBox tb = new TextBox (); tb.ID = "Text1"; switch (testType) { case "ValidatingValid": tb.Text = "111"; break; case "ValidatingInvalid": case "NotValidatingInvalid": case "ValidationGroupIncluded": case "ValidationGroupNotIncluded": tb.Text = ""; break; } RequiredFieldValidator v = new RequiredFieldValidator (); v.ControlToValidate = "Text1"; switch (testType) { case "ValidationGroupIncluded": v.ValidationGroup = "Group1"; break; case "ValidationGroupNotIncluded": v.ValidationGroup = "NotGroup1"; break; default: v.ValidationGroup = ""; break; } TemplateColumn tc = new TemplateColumn (); tc.EditItemTemplate = new ValidatingEditTemplate (tb, v); dg.Columns.Add (tc); ObjectDataSource ods = new ObjectDataSource ("MyObjectDS", "Select"); ods.UpdateMethod = "Update"; ods.DataObjectTypeName = "MyObjectDS"; ods.ID = "MyDS"; p.Form.Controls.Add (ods); dg.DataSource = ods; //dg.DataKeyField = "i"; //DataTable table = new DataTable (); //table.Columns.Add (new DataColumn ("one", typeof (string))); //table.Columns.Add (new DataColumn ("two", typeof (string))); //table.Columns.Add (new DataColumn ("three", typeof (string))); //table.Rows.Add (new object [] { "1", "2", "3" }); //dg.DataSource = new DataView (table); dg.EditItemIndex = 0; p.Form.Controls.Add (dg); dg.DataBind (); if (!p.IsPostBack) { WebTest.CurrentTest.UserData = dg.Items [0].Cells [0].Controls [0].UniqueID; } }
public override DataGridColumnsPage.ColumnItem CreateColumn() { TemplateColumn runtimeColumn = new TemplateColumn(); DataGridColumnsPage.ColumnItem item = new DataGridColumnsPage.TemplateColumnItem(runtimeColumn); item.LoadColumnInfo(); return item; }
public void OneTemplateColumn3 () { DataGridPoker p = new DataGridPoker (); p.ShowFooter = true; p.AutoGenerateColumns = false; p.DataSource = new ArrayList (); TemplateColumn tc = new TemplateColumn (); tc.FooterTemplate = new MyTemplate ("hola"); p.Columns.Add (tc); p.DataBind (); StringWriter sw = new StringWriter (); HtmlTextWriter tw = new HtmlTextWriter (sw); Assert.AreEqual (1, p.Columns.Count, "columns"); Assert.AreEqual (1, p.Controls.Count, "controls"); string render = p.Render (); // no items, but we have a footer Assert.IsTrue (-1 != render.IndexOf ("hola"), "template"); }
/// <summary> /// Configure a template column at the given position, /// using the IGtridConfig settings. /// </summary> /// <param name="pos">Position to insert column</param> /// <param name="config">Column settings</param> /// <returns>The next column pos</returns> protected int BindTemplateColumn(int pos, IGridConfig config) { TemplateColumn column = new TemplateColumn(); column.HeaderText = config.HeaderText; column.ItemTemplate = config.ItemTemplate; column.EditItemTemplate = config.EditItemTemplate; // column.SortExpression = config.sortExpression; // See DataGridColumn.SortExpression Property // column.DataFormatString = config.dataFormat; // See Formatting Types in .NET Dev Guide Grid.Columns.AddAt(pos, column); return pos + 1; }
public static void AppendGridColumns(string sGRID_NAME, DataGrid grd) { if ( grd == null ) { SplendidError.SystemWarning(new StackTrace(true).GetFrame(0), "DataGrid is not defined for " + sGRID_NAME); return; } DataTable dt = SplendidCache.GridViewColumns(sGRID_NAME); if ( dt != null ) { foreach(DataRow row in dt.Rows) { int nCOLUMN_INDEX = Sql.ToInteger(row["COLUMN_INDEX" ]); string sCOLUMN_TYPE = Sql.ToString (row["COLUMN_TYPE" ]); string sHEADER_TEXT = Sql.ToString (row["HEADER_TEXT" ]); string sSORT_EXPRESSION = Sql.ToString (row["SORT_EXPRESSION" ]); string sITEMSTYLE_WIDTH = Sql.ToString (row["ITEMSTYLE_WIDTH" ]); string sITEMSTYLE_CSSCLASS = Sql.ToString (row["ITEMSTYLE_CSSCLASS" ]); string sITEMSTYLE_HORIZONTAL_ALIGN = Sql.ToString (row["ITEMSTYLE_HORIZONTAL_ALIGN"]); string sITEMSTYLE_VERTICAL_ALIGN = Sql.ToString (row["ITEMSTYLE_VERTICAL_ALIGN" ]); bool bITEMSTYLE_WRAP = Sql.ToBoolean(row["ITEMSTYLE_WRAP" ]); string sDATA_FIELD = Sql.ToString (row["DATA_FIELD" ]); string sDATA_FORMAT = Sql.ToString (row["DATA_FORMAT" ]); string sURL_FIELD = Sql.ToString (row["URL_FIELD" ]); string sURL_FORMAT = Sql.ToString (row["URL_FORMAT" ]); string sURL_TARGET = Sql.ToString (row["URL_TARGET" ]); string sLIST_NAME = Sql.ToString (row["LIST_NAME" ]); // 04/28/2006 Paul. The module is necessary in order to determine if a user has access. string sURL_MODULE = Sql.ToString (row["URL_MODULE" ]); // 05/02/2006 Paul. The assigned user id is necessary if the user only has Owner access. string sURL_ASSIGNED_FIELD = Sql.ToString (row["URL_ASSIGNED_FIELD" ]); HorizontalAlign eHorizontalAlign = HorizontalAlign.NotSet; switch ( sITEMSTYLE_HORIZONTAL_ALIGN.ToLower() ) { case "left" : eHorizontalAlign = HorizontalAlign.Left ; break; case "right": eHorizontalAlign = HorizontalAlign.Right; break; } VerticalAlign eVerticalAlign = VerticalAlign.NotSet; switch ( sITEMSTYLE_VERTICAL_ALIGN.ToLower() ) { case "top" : eVerticalAlign = VerticalAlign.Top ; break; case "middle": eVerticalAlign = VerticalAlign.Middle; break; case "bottom": eVerticalAlign = VerticalAlign.Bottom; break; } // 11/28/2005 Paul. Wrap defaults to true. if ( row["ITEMSTYLE_WRAP"] == DBNull.Value ) bITEMSTYLE_WRAP = true; DataGridColumn col = null; // 02/03/2006 Paul. Date and Currency must always be handled by CreateItemTemplateLiteral. // Otherwise, the date or time will not get properly translated to the correct timezone. // This bug was reported by David Williams. if ( String.Compare(sCOLUMN_TYPE, "BoundColumn", true) == 0 && ( String.Compare(sDATA_FORMAT, "Date" , true) == 0 || String.Compare(sDATA_FORMAT, "DateTime", true) == 0 || String.Compare(sDATA_FORMAT, "Currency", true) == 0 || String.Compare(sDATA_FORMAT, "Image" , true) == 0 ) ) { sCOLUMN_TYPE = "TemplateColumn"; } if ( String.Compare(sCOLUMN_TYPE, "BoundColumn", true) == 0 ) { if ( Sql.IsEmptyString(sLIST_NAME) ) { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH BoundColumn bnd = new BoundColumn(); bnd.HeaderText = sHEADER_TEXT ; bnd.DataField = sDATA_FIELD ; bnd.SortExpression = sSORT_EXPRESSION ; bnd.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); bnd.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; bnd.ItemStyle.HorizontalAlign = eHorizontalAlign ; bnd.ItemStyle.VerticalAlign = eVerticalAlign ; bnd.ItemStyle.Wrap = bITEMSTYLE_WRAP ; col = bnd; } else { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH TemplateColumn tpl = new TemplateColumn(); tpl.HeaderText = sHEADER_TEXT ; tpl.SortExpression = sSORT_EXPRESSION ; tpl.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemStyle.HorizontalAlign = eHorizontalAlign ; tpl.ItemStyle.VerticalAlign = eVerticalAlign ; tpl.ItemStyle.Wrap = bITEMSTYLE_WRAP ; tpl.ItemTemplate = new CreateItemTemplateLiteralList(sDATA_FIELD, sLIST_NAME); col = tpl; } } else if ( String.Compare(sCOLUMN_TYPE, "TemplateColumn", true) == 0 ) { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH TemplateColumn tpl = new TemplateColumn(); tpl.HeaderText = sHEADER_TEXT ; tpl.SortExpression = sSORT_EXPRESSION ; tpl.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemStyle.HorizontalAlign = eHorizontalAlign ; tpl.ItemStyle.VerticalAlign = eVerticalAlign ; tpl.ItemStyle.Wrap = bITEMSTYLE_WRAP ; if ( String.Compare(sDATA_FORMAT, "HyperLink", true) == 0 ) { tpl.ItemTemplate = new CreateItemTemplateHyperLink(sDATA_FIELD, sURL_FIELD, sURL_FORMAT, sURL_TARGET, sITEMSTYLE_CSSCLASS, sURL_MODULE, sURL_ASSIGNED_FIELD); } else if ( String.Compare(sDATA_FORMAT, "Image", true) == 0 ) { tpl.ItemTemplate = new CreateItemTemplateImage(sDATA_FIELD, sITEMSTYLE_CSSCLASS); } else { tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemTemplate = new CreateItemTemplateLiteral(sDATA_FIELD, sDATA_FORMAT); } col = tpl; } else if ( String.Compare(sCOLUMN_TYPE, "HyperLinkColumn", true) == 0 ) { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH, ITEMSTYLE-CSSCLASS, URL_FIELD, URL_FORMAT HyperLinkColumn lnk = new HyperLinkColumn(); lnk.HeaderText = sHEADER_TEXT ; lnk.DataTextField = sDATA_FIELD ; lnk.SortExpression = sSORT_EXPRESSION ; lnk.DataNavigateUrlField = sURL_FIELD ; lnk.DataNavigateUrlFormatString = sURL_FORMAT ; lnk.Target = sURL_TARGET ; lnk.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); lnk.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; lnk.ItemStyle.HorizontalAlign = eHorizontalAlign ; lnk.ItemStyle.VerticalAlign = eVerticalAlign ; lnk.ItemStyle.Wrap = bITEMSTYLE_WRAP ; col = lnk; } if ( col != null ) { // 11/28/2005 Paul. In case the column specified is too high, just append column. if ( nCOLUMN_INDEX >= grd.Columns.Count ) grd.Columns.Add(col); else grd.Columns.AddAt(nCOLUMN_INDEX, col); } } } }
private DataGridColumn c_template(string se) { TemplateColumn column1 = new TemplateColumn(); column1.ItemTemplate = new DataGridColumn_HeaderImageUrl.t_DBLitTemplate(); column1.HeaderImageUrl = se; return column1; }
private void DefineDGStructure() { int ObjectTypeId = int.Parse(pc["GlobalSubscription_ObjectType"]); DataTable source = SystemEvents.GetGlobalSubscriptionsDT(ObjectTypeId); // Data Grid definition grdMain.Columns.Clear(); BoundColumn idCol = new BoundColumn(); idCol.DataField = "EventTypeId"; idCol.Visible = false; grdMain.Columns.Add(idCol); BoundColumn titleCol = new BoundColumn(); titleCol.DataField = "Title"; titleCol.HeaderStyle.CssClass = "ibn-vh2"; titleCol.ItemStyle.CssClass = "ibn-vb2"; titleCol.HeaderText = LocRM.GetString("SystemEvent"); grdMain.Columns.Add(titleCol); foreach (DataColumn roleCol in source.Columns) { if (!roleCol.ColumnName.ToLower().StartsWith("role_")) continue; TemplateColumn checkBoxCol = new TemplateColumn(); checkBoxCol.HeaderStyle.Width = Unit.Pixel(75); checkBoxCol.ItemStyle.Width = Unit.Pixel(75); checkBoxCol.ItemTemplate = new DataGridCheckBoxTemplate(roleCol.ColumnName); checkBoxCol.HeaderStyle.CssClass = "ibn-vh2"; checkBoxCol.ItemStyle.CssClass = "ibn-vb2"; checkBoxCol.HeaderText = LocRM.GetString(roleCol.ColumnName); grdMain.Columns.Add(checkBoxCol); } BindData(source); }
// 02/08/2008 We need to build a list of the fields used by the dynamic grid. // 03/01/2014 Add Preview button. public static void AppendGridColumns(string sGRID_NAME, DataGrid grd, UniqueStringCollection arrSelectFields, CommandEventHandler Page_Command) { if ( grd == null ) { SplendidError.SystemWarning(new StackTrace(true).GetFrame(0), "DataGrid is not defined for " + sGRID_NAME); return; } DataTable dt = SplendidCache.GridViewColumns(sGRID_NAME); if ( dt != null ) { // 01/01/2008 Pull config flag outside the loop. bool bEnableTeamManagement = Crm.Config.enable_team_management(); // 08/28/2009 Allow dynamic teams to be turned off. bool bEnableDynamicTeams = Crm.Config.enable_dynamic_teams(); foreach(DataRow row in dt.Rows) { int nCOLUMN_INDEX = Sql.ToInteger(row["COLUMN_INDEX" ]); string sCOLUMN_TYPE = Sql.ToString (row["COLUMN_TYPE" ]); string sHEADER_TEXT = Sql.ToString (row["HEADER_TEXT" ]); string sSORT_EXPRESSION = Sql.ToString (row["SORT_EXPRESSION" ]); string sITEMSTYLE_WIDTH = Sql.ToString (row["ITEMSTYLE_WIDTH" ]); string sITEMSTYLE_CSSCLASS = Sql.ToString (row["ITEMSTYLE_CSSCLASS" ]); string sITEMSTYLE_HORIZONTAL_ALIGN = Sql.ToString (row["ITEMSTYLE_HORIZONTAL_ALIGN"]); string sITEMSTYLE_VERTICAL_ALIGN = Sql.ToString (row["ITEMSTYLE_VERTICAL_ALIGN" ]); bool bITEMSTYLE_WRAP = Sql.ToBoolean(row["ITEMSTYLE_WRAP" ]); string sDATA_FIELD = Sql.ToString (row["DATA_FIELD" ]); string sDATA_FORMAT = Sql.ToString (row["DATA_FORMAT" ]); string sURL_FIELD = Sql.ToString (row["URL_FIELD" ]); string sURL_FORMAT = Sql.ToString (row["URL_FORMAT" ]); string sURL_TARGET = Sql.ToString (row["URL_TARGET" ]); string sLIST_NAME = Sql.ToString (row["LIST_NAME" ]); // 04/28/2006 The module is necessary in order to determine if a user has access. string sURL_MODULE = Sql.ToString (row["URL_MODULE" ]); // 05/02/2006 The assigned user id is necessary if the user only has Owner access. string sURL_ASSIGNED_FIELD = Sql.ToString (row["URL_ASSIGNED_FIELD" ]); // 02/16/2010 Add MODULE_TYPE so that we can lookup custom field IDs. string sMODULE_TYPE = String.Empty; try { sMODULE_TYPE = Sql.ToString (row["MODULE_TYPE"]); } catch(Exception ex) { // 06/16/2010 The MODULE_TYPE is not in the view, then log the error and continue. SplendidError.SystemWarning(new StackTrace(true).GetFrame(0), ex); } // 10/09/2010 Add PARENT_FIELD so that we can establish dependent listboxes. string sPARENT_FIELD = String.Empty; try { sPARENT_FIELD = Sql.ToString (row["PARENT_FIELD"]); } catch(Exception ex) { // 10/09/2010 The PARENT_FIELD is not in the view, then log the error and continue. SplendidError.SystemWarning(new StackTrace(true).GetFrame(0), ex); } if ( (sDATA_FIELD == "TEAM_NAME" || sDATA_FIELD == "TEAM_SET_NAME") ) { if ( bEnableTeamManagement && bEnableDynamicTeams ) { sHEADER_TEXT = ".LBL_LIST_TEAM_SET_NAME"; sDATA_FIELD = "TEAM_SET_NAME"; } } // 02/08/2008 We need to build a list of the fields used by the dynamic grid. if ( arrSelectFields != null ) { // 08/02/2010 The JavaScript and Hover fields will not have a data field. if ( !Sql.IsEmptyString(sDATA_FIELD) ) arrSelectFields.Add(sDATA_FIELD); if ( !Sql.IsEmptyString(sSORT_EXPRESSION) ) arrSelectFields.Add(sSORT_EXPRESSION); if ( !Sql.IsEmptyString(sURL_FIELD) ) { // 08/02/2010 We want to allow Terminology fields, so exclude anything with a "." if ( sURL_FIELD.IndexOf(' ') >= 0 ) { string[] arrURL_FIELD = sURL_FIELD.Split(' '); foreach ( string s in arrURL_FIELD ) { if ( !s.Contains(".") && !Sql.IsEmptyString(s) ) arrSelectFields.Add(s); } } else if ( !sURL_FIELD.Contains(".") ) arrSelectFields.Add(sURL_FIELD); if ( !Sql.IsEmptyString(sURL_ASSIGNED_FIELD) ) arrSelectFields.Add(sURL_ASSIGNED_FIELD); } // 10/09/2010 Add PARENT_FIELD so that we can establish dependent listboxes. if ( !Sql.IsEmptyString(sPARENT_FIELD) ) arrSelectFields.Add(sPARENT_FIELD); } HorizontalAlign eHorizontalAlign = HorizontalAlign.NotSet; switch ( sITEMSTYLE_HORIZONTAL_ALIGN.ToLower() ) { case "left" : eHorizontalAlign = HorizontalAlign.Left ; break; case "right": eHorizontalAlign = HorizontalAlign.Right; break; } VerticalAlign eVerticalAlign = VerticalAlign.NotSet; switch ( sITEMSTYLE_VERTICAL_ALIGN.ToLower() ) { case "top" : eVerticalAlign = VerticalAlign.Top ; break; case "middle": eVerticalAlign = VerticalAlign.Middle; break; case "bottom": eVerticalAlign = VerticalAlign.Bottom; break; } // 11/28/2005 Wrap defaults to true. if ( row["ITEMSTYLE_WRAP"] == DBNull.Value ) bITEMSTYLE_WRAP = true; // 01/18/2010 To apply ACL Field Security, we need to know if the Module Name, which we will extract from the EditView Name. string sMODULE_NAME = String.Empty; string[] arrGRID_NAME = sGRID_NAME.Split('.'); if ( arrGRID_NAME.Length > 0 ) { if ( arrGRID_NAME[0] == "ListView" || arrGRID_NAME[0] == "PopupView" || arrGRID_NAME[0] == "Activities" ) sMODULE_NAME = arrGRID_NAME[0]; // 01/18/2010 A sub-panel should apply the access rules of the related module. else if ( Sql.ToBoolean(HttpContext.Current.Application["Modules." + arrGRID_NAME[1] + ".Valid"]) ) sMODULE_NAME = arrGRID_NAME[1]; else sMODULE_NAME = arrGRID_NAME[0]; } // 01/18/2010 A field is either visible or not. At this time, we will not only show a field to its owner. bool bIsReadable = true; // 08/02/2010 The JavaScript and Hover fields will not have a data field. if ( SplendidInit.bEnableACLFieldSecurity && !Sql.IsEmptyString(sDATA_FIELD) ) { Security.ACL_FIELD_ACCESS acl = Security.GetUserFieldSecurity(sMODULE_NAME, sDATA_FIELD, Guid.Empty); bIsReadable = acl.IsReadable(); } DataGridColumn col = null; // 02/03/2006 Date and Currency must always be handled by CreateItemTemplateLiteral. // Otherwise, the date or time will not get properly translated to the correct timezone. // This bug was reported by David Williams. // 05/20/2009 We need a way to preserve CRLF in description fields. if ( String.Compare(sCOLUMN_TYPE, "BoundColumn", true) == 0 && ( String.Compare(sDATA_FORMAT, "Date" , true) == 0 || String.Compare(sDATA_FORMAT, "DateTime" , true) == 0 || String.Compare(sDATA_FORMAT, "Currency" , true) == 0 || String.Compare(sDATA_FORMAT, "Image" , true) == 0 || String.Compare(sDATA_FORMAT, "MultiLine" , true) == 0 ) ) { sCOLUMN_TYPE = "TemplateColumn"; } // 03/14/2014 A hidden field does not render. It is primarily used to add a field to the SQL select list for Business Rules management. else if ( String.Compare(sCOLUMN_TYPE, "Hidden", true) == 0 ) { continue; } if ( String.Compare(sCOLUMN_TYPE, "BoundColumn", true) == 0 ) { if ( Sql.IsEmptyString(sLIST_NAME) ) { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH BoundColumn bnd = new BoundColumn(); bnd.HeaderText = sHEADER_TEXT ; bnd.DataField = sDATA_FIELD ; bnd.SortExpression = sSORT_EXPRESSION ; bnd.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); bnd.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; bnd.ItemStyle.HorizontalAlign = eHorizontalAlign ; bnd.ItemStyle.VerticalAlign = eVerticalAlign ; bnd.ItemStyle.Wrap = bITEMSTYLE_WRAP ; // 04/13/2007 Align the headers to match the data. bnd.HeaderStyle.HorizontalAlign = eHorizontalAlign ; col = bnd; // 01/18/2010 Apply ACL Field Security. col.Visible = bIsReadable; // 10/23/2012 Kevin. Allow me to pass data format for gridview bound columns. if ( !Sql.IsEmptyString(sDATA_FORMAT) ) { bnd.DataFormatString = sDATA_FORMAT; } } else { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH TemplateColumn tpl = new TemplateColumn(); tpl.HeaderText = sHEADER_TEXT ; tpl.SortExpression = sSORT_EXPRESSION ; tpl.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemStyle.HorizontalAlign = eHorizontalAlign ; tpl.ItemStyle.VerticalAlign = eVerticalAlign ; tpl.ItemStyle.Wrap = bITEMSTYLE_WRAP ; // 04/13/2007 Align the headers to match the data. tpl.HeaderStyle.HorizontalAlign = eHorizontalAlign ; // 10/09/2010 Add PARENT_FIELD so that we can establish dependent listboxes. tpl.ItemTemplate = new CreateItemTemplateLiteralList(sDATA_FIELD, sLIST_NAME, sPARENT_FIELD); col = tpl; // 01/18/2010 Apply ACL Field Security. col.Visible = bIsReadable; } } else if ( String.Compare(sCOLUMN_TYPE, "TemplateColumn", true) == 0 ) { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH TemplateColumn tpl = new TemplateColumn(); tpl.HeaderText = sHEADER_TEXT ; tpl.SortExpression = sSORT_EXPRESSION ; tpl.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemStyle.HorizontalAlign = eHorizontalAlign ; tpl.ItemStyle.VerticalAlign = eVerticalAlign ; tpl.ItemStyle.Wrap = bITEMSTYLE_WRAP ; // 04/13/2007 Align the headers to match the data. tpl.HeaderStyle.HorizontalAlign = eHorizontalAlign ; if ( String.Compare(sDATA_FORMAT, "JavaScript", true) == 0 ) { // 08/02/2010 In our application of Field Level Security, we will hide fields by replacing with "." if ( SplendidInit.bEnableACLFieldSecurity && !Sql.IsEmptyString(sURL_FIELD) ) { string[] arrURL_FIELD = sURL_FIELD.Split(' '); for ( int i=0; i < arrURL_FIELD.Length; i++ ) { Security.ACL_FIELD_ACCESS acl = Security.GetUserFieldSecurity(sMODULE_NAME, sDATA_FIELD, Guid.Empty); if ( !acl.IsReadable() ) arrURL_FIELD[i] = "."; } sURL_FIELD = String.Join(" ", arrURL_FIELD); } tpl.ItemTemplate = new CreateItemTemplateJavaScript(sDATA_FIELD, sURL_FIELD, sURL_FORMAT, sURL_TARGET); } // 02/26/2014 Add Preview button. else if ( String.Compare(sDATA_FORMAT, "JavaImage", true) == 0 ) { if ( SplendidInit.bEnableACLFieldSecurity && !Sql.IsEmptyString(sURL_FIELD) ) { string[] arrURL_FIELD = sURL_FIELD.Split(' '); for ( int i=0; i < arrURL_FIELD.Length; i++ ) { Security.ACL_FIELD_ACCESS acl = Security.GetUserFieldSecurity(sMODULE_NAME, sDATA_FIELD, Guid.Empty); if ( !acl.IsReadable() ) arrURL_FIELD[i] = "."; } sURL_FIELD = String.Join(" ", arrURL_FIELD); } tpl.ItemTemplate = new CreateItemTemplateJavaScriptImage(sURL_FIELD, sURL_FORMAT, sURL_TARGET); } // 03/01/2014 Add Preview button. else if ( String.Compare(sDATA_FORMAT, "ImageButton", true) == 0 ) { // 03/01/2014 sURL_FIELD is an internal value, so there is no need to apply ACL rules. tpl.ItemTemplate = new CreateItemTemplateImageButton(sURL_FIELD, sURL_FORMAT, sURL_TARGET, sITEMSTYLE_CSSCLASS, Page_Command); } else if ( String.Compare(sDATA_FORMAT, "Hover", true) == 0 ) { string sIMAGE_SKIN = sURL_TARGET; if ( Sql.IsEmptyString(sIMAGE_SKIN) ) sIMAGE_SKIN = "info_inline"; // 08/02/2010 In our application of Field Level Security, we will hide fields by replacing with "." if ( SplendidInit.bEnableACLFieldSecurity && !Sql.IsEmptyString(sURL_FIELD) ) { string[] arrURL_FIELD = sURL_FIELD.Split(' '); for ( int i=0; i < arrURL_FIELD.Length; i++ ) { Security.ACL_FIELD_ACCESS acl = Security.GetUserFieldSecurity(sMODULE_NAME, sDATA_FIELD, Guid.Empty); if ( !acl.IsReadable() ) arrURL_FIELD[i] = "."; } sURL_FIELD = String.Join(" ", arrURL_FIELD); } tpl.ItemTemplate = new CreateItemTemplateHover(sDATA_FIELD, sURL_FIELD, sURL_FORMAT, sIMAGE_SKIN); } else if ( String.Compare(sDATA_FORMAT, "HyperLink", true) == 0 ) { // 07/26/2007 PopupViews have special requirements. They need an OnClick action that takes more than one parameter. if ( sURL_FIELD.IndexOf(' ') >= 0 ) tpl.ItemTemplate = new CreateItemTemplateHyperLinkOnClick(sDATA_FIELD, sURL_FIELD, sURL_FORMAT, sURL_TARGET, sITEMSTYLE_CSSCLASS, sURL_MODULE, sURL_ASSIGNED_FIELD, sMODULE_TYPE); else tpl.ItemTemplate = new CreateItemTemplateHyperLink(sDATA_FIELD, sURL_FIELD, sURL_FORMAT, sURL_TARGET, sITEMSTYLE_CSSCLASS, sURL_MODULE, sURL_ASSIGNED_FIELD, sMODULE_TYPE); } else if ( String.Compare(sDATA_FORMAT, "Image", true) == 0 ) { tpl.ItemTemplate = new CreateItemTemplateImage(sDATA_FIELD, sITEMSTYLE_CSSCLASS); } else { tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemTemplate = new CreateItemTemplateLiteral(sDATA_FIELD, sDATA_FORMAT, sMODULE_TYPE); } col = tpl; // 01/18/2010 Apply ACL Field Security. col.Visible = bIsReadable; } else if ( String.Compare(sCOLUMN_TYPE, "HyperLinkColumn", true) == 0 ) { // GRID_NAME, COLUMN_ORDER, COLUMN_TYPE, HEADER_TEXT, DATA_FIELD, SORT_EXPRESSION, ITEMSTYLE_WIDTH, ITEMSTYLE-CSSCLASS, URL_FIELD, URL_FORMAT HyperLinkColumn lnk = new HyperLinkColumn(); lnk.HeaderText = sHEADER_TEXT ; lnk.DataTextField = sDATA_FIELD ; lnk.SortExpression = sSORT_EXPRESSION ; lnk.DataNavigateUrlField = sURL_FIELD ; lnk.DataNavigateUrlFormatString = sURL_FORMAT ; lnk.Target = sURL_TARGET ; lnk.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); lnk.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; lnk.ItemStyle.HorizontalAlign = eHorizontalAlign ; lnk.ItemStyle.VerticalAlign = eVerticalAlign ; lnk.ItemStyle.Wrap = bITEMSTYLE_WRAP ; // 04/13/2007 Align the headers to match the data. lnk.HeaderStyle.HorizontalAlign = eHorizontalAlign ; col = lnk; // 01/18/2010 Apply ACL Field Security. col.Visible = bIsReadable; } if ( col != null ) { // 11/25/2006 If Team Management has been disabled, then hide the column. // Keep the column, but hide it so that the remaining column positions will still be valid. // 10/27/2007 The data field was changed to TEAM_NAME on 11/25/2006. It should have been changed here as well. // 08/24/2009 Add support for dynamic teams. if ( (sDATA_FIELD == "TEAM_NAME" || sDATA_FIELD == "TEAM_SET_NAME") && !bEnableTeamManagement ) { col.Visible = false; } // 11/28/2005 In case the column specified is too high, just append column. if ( nCOLUMN_INDEX >= grd.Columns.Count ) grd.Columns.Add(col); else grd.Columns.AddAt(nCOLUMN_INDEX, col); } } } // 09/20/2012 We need a SCRIPT field that is form specific. if ( dt.Rows.Count > 0 ) { try { string sFORM_SCRIPT = Sql.ToString(dt.Rows[0]["SCRIPT"]); if ( !Sql.IsEmptyString(sFORM_SCRIPT) ) { // 09/20/2012 The base ID is not the ID of the parent, but the ID of the TemplateControl. sFORM_SCRIPT = sFORM_SCRIPT.Replace("SPLENDID_GRIDVIEW_LAYOUT_ID", grd.TemplateControl.ClientID); ScriptManager.RegisterStartupScript(grd, typeof(System.String), sGRID_NAME.Replace(".", "_") + "_SCRIPT", sFORM_SCRIPT, true); } } catch(Exception ex) { SplendidError.SystemWarning(new StackTrace(true).GetFrame(0), ex); } } }
// ********************************************************************* // CreateSearchResultsPanel // /// <summary> /// This function creates the panel to display the search results in. /// </summary> /// // ********************************************************************/ private void CreateSearchResultsPanel() { Table table; TableHeaderCell th; TableRow tr; TableCell td; Label searchResultsText; // Create the panel searchResultsPanel = new Panel(); searchResultsPanel.ID = "panelSearchResults"; searchResultsPanel.Visible = false; // Create and set some properties on the table table = new Table(); table.CellPadding = 3; table.CellSpacing = 1; table.Width = Unit.Percentage(100); table.CssClass = "tableBorder"; // Display the title tr = new TableRow(); th = new TableHeaderCell(); th.CssClass = "tableHeaderText"; th.HorizontalAlign = HorizontalAlign.Left; searchResultsText = new Label(); searchResultsText.ID = "lblInformation"; th.Controls.Add(searchResultsText); tr.Controls.Add(th); table.Controls.Add(tr); // Add some white space searchResultsPanel.Controls.Add(new LiteralControl("<P></P>")); // Add the search results tr = new TableRow(); td = new TableCell(); // add the dataGrid searchResultsDataGrid = new DataGrid(); searchResultsDataGrid.ID = "searchResultsDataGrid"; searchResultsDataGrid.CellPadding = 5; searchResultsDataGrid.CellSpacing = 0; searchResultsDataGrid.BorderWidth = 0; searchResultsDataGrid.AllowCustomPaging = true; searchResultsDataGrid.AllowPaging = true; searchResultsDataGrid.PageIndexChanged += new DataGridPageChangedEventHandler(DataGrid_PageIndexChange); // Set the pager style attributes searchResultsDataGrid.PagerStyle.CopyFrom(datagridPagerStyle); searchResultsDataGrid.PagerStyle.CssClass = "searchPager"; searchResultsDataGrid.PagerStyle.Position = datagridPagerStyle.Position; searchResultsDataGrid.PagerStyle.Mode = datagridPagerStyle.Mode; searchResultsDataGrid.PagerStyle.NextPageText = datagridPagerStyle.NextPageText; searchResultsDataGrid.PagerStyle.PageButtonCount = datagridPagerStyle.PageButtonCount; searchResultsDataGrid.PagerStyle.PrevPageText = datagridPagerStyle.PrevPageText; searchResultsDataGrid.PagerStyle.Visible = datagridPagerStyle.Visible; searchResultsDataGrid.PagerStyle.HorizontalAlign = HorizontalAlign.Right; // Set the item styles searchResultsDataGrid.ItemStyle.CssClass = "searchItem"; searchResultsDataGrid.AlternatingItemStyle.CssClass = "searchAlternatingItem"; // Set some display properties searchResultsDataGrid.Width = Unit.Percentage(100.0); searchResultsDataGrid.AutoGenerateColumns = false; searchResultsDataGrid.ShowHeader = false; // Add a template column to the Columns property - this column is used to display count TemplateColumn searchResultsCountColumn = new TemplateColumn(); searchResultsCountColumn.ItemTemplate = new CompiledTemplateBuilder(new BuildTemplateMethod(BuildCountItemTemplate)); searchResultsCountColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Left; searchResultsCountColumn.ItemStyle.VerticalAlign = VerticalAlign.Top; searchResultsDataGrid.Columns.Add(searchResultsCountColumn); // Add a template column to the Columns property - this column is used to display results TemplateColumn searchResultsColumn = new TemplateColumn(); searchResultsColumn.ItemTemplate = new CompiledTemplateBuilder(new BuildTemplateMethod(BuildItemTemplate)); searchResultsDataGrid.Columns.Add(searchResultsColumn); // Add the datagrid with our search results td.Controls.Add(searchResultsDataGrid); tr.Controls.Add(td); table.Controls.Add(tr); // Add the table searchResultsPanel.Controls.Add(table); this.Controls.Add(searchResultsPanel); }
private DataGridColumn c_template(ListItemType tp, string text) { TemplateColumn column1 = new TemplateColumn(); column1.ItemTemplate = new DataGridColumn_FooterStyle.t_DBLitTemplate(); this.setStyle(column1, tp); this.setText(column1, tp, text); return column1; }
/// <summary> /// Sets up the columns for the Grid /// </summary> private void SetUpRolesGrid() { dgRoleSelection.Columns.Clear(); var textCol = new BoundColumn {HeaderText = " ", DataField = "RoleName"}; textCol.ItemStyle.Width = Unit.Parse("150px"); dgRoleSelection.Columns.Add(textCol); var idCol = new BoundColumn {HeaderText = "", DataField = "roleid", Visible = false}; dgRoleSelection.Columns.Add(idCol); var checkCol = new TemplateColumn(); var columnTemplate = new CheckBoxColumnTemplate {DataField = "Selected"}; checkCol.ItemTemplate = columnTemplate; checkCol.HeaderText = Localization.GetString("SelectedRole"); checkCol.ItemStyle.HorizontalAlign = HorizontalAlign.Center; checkCol.HeaderStyle.Wrap = true; dgRoleSelection.Columns.Add(checkCol); }
public void OneTemplateColumn1 () { DataGridPoker p = new DataGridPoker (); TemplateColumn tc = new TemplateColumn (); tc.ItemTemplate = new MyTemplate ("hola"); p.Columns.Add (tc); ControlCollection controls = p.Controls; p.CreateControls (true); Assert.AreEqual (1, p.Columns.Count, "columns"); Assert.AreEqual (0, controls.Count, "controls"); string render = p.Render (); // no items, even with a templated column. // The table is not added if DataSource == null Assert.IsTrue (-1 == render.IndexOf ("hola"), "template"); }
private void AppendFilterColumn(string sDATA_FIELD, string sTYPE) { TemplateColumn tpl = new TemplateColumn(); tpl.ItemStyle.Width = new Unit("12%"); //tpl.ItemStyle.CssClass = "tabDetailViewDF"; tpl.ItemStyle.HorizontalAlign = HorizontalAlign.NotSet; tpl.ItemStyle.VerticalAlign = VerticalAlign.NotSet ; tpl.ItemStyle.Wrap = false; tpl.HeaderText = sDATA_FIELD; if ( sTYPE == "DropDownList" ) tpl.ItemTemplate = new CreateItemTemplateReportFilterList(sDATA_FIELD); else if ( sTYPE == "TextBox" ) tpl.ItemTemplate = new CreateItemTemplateReportFilterText(sDATA_FIELD); this.Columns.Add(tpl); }
public void OneTemplateColumn2 () { DataGridPoker p = new DataGridPoker (); p.ShowFooter = true; p.AutoGenerateColumns = false; p.DataSource = new ArrayList (); TemplateColumn tc = new TemplateColumn (); tc.HeaderText = " "; tc.FooterTemplate = new MyTemplate ("hola"); p.Columns.Add (tc); Assert.AreEqual (1, p.Columns.Count, "columns-1"); Assert.AreEqual (0, p.Controls.Count, "controls-1"); p.CreateControls (true); // This time we have the table there. Thanks to the empty ArrayList Assert.AreEqual (1, p.Columns.Count, "columns-2"); Assert.AreEqual (1, p.Controls.Count, "controls-2"); p.PrepareCH (); Assert.AreEqual (1, p.Columns.Count, "columns-3"); Assert.AreEqual (1, p.Controls.Count, "controls-3"); }
private DataGridColumn c_template(bool v) { TemplateColumn column1 = new TemplateColumn(); column1.ItemTemplate = new DataGridColumn_Visible.t_DBLitTemplate(); column1.Visible = v; return column1; }
private void SetUpGrid(DataGrid grid, string nameColumnDataField, string idColumnDataField) { grid.Columns.Clear(); var nameColumn = new BoundColumn { HeaderText = " ", DataField = nameColumnDataField }; nameColumn.ItemStyle.Width = Unit.Parse("150px"); nameColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Right; grid.Columns.Add(nameColumn); var idColumn = new BoundColumn { HeaderText = "", DataField = idColumnDataField, Visible = false }; grid.Columns.Add(idColumn); foreach (PermissionInfo permission in _permissions) { var templateCol = new TemplateColumn(); var columnTemplate = new PermissionTriStateTemplate(permission) { IsFullControl = IsFullControl(permission), IsView = IsViewPermisison(permission), SupportDenyMode = SupportsDenyPermissions(permission) }; templateCol.ItemTemplate = columnTemplate; var locName = ""; if (permission.ModuleDefID > 0) { if (!String.IsNullOrEmpty(ResourceFile)) { //custom permission locName = Localization.GetString(permission.PermissionName + ".Permission", ResourceFile); } } else { //system permission locName = Localization.GetString(permission.PermissionName + ".Permission", PermissionProvider.Instance().LocalResourceFile); } templateCol.HeaderText = !String.IsNullOrEmpty(locName) ? locName : permission.PermissionName; templateCol.HeaderStyle.HorizontalAlign = HorizontalAlign.Center; templateCol.HeaderStyle.VerticalAlign = VerticalAlign.Bottom; templateCol.ItemStyle.HorizontalAlign = HorizontalAlign.Center; templateCol.ItemStyle.Width = Unit.Parse("70px"); templateCol.HeaderStyle.Wrap = true; grid.Columns.Add(templateCol); } }
private void Page_Load(object sender, System.EventArgs e) { //Put user code to initialize the page here System.Web.UI.HtmlControls.HtmlForm frm = (HtmlForm)this.FindControl("Form1"); GHTTestBegin(frm); GHTActiveSubTest = GHTSubTest1; try { DataGrid1.DataSource = GHTTests.GHDataSources.DSDataTable(); System.Web.UI.WebControls.TemplateColumn c1 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c2 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c3 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c4 = new System.Web.UI.WebControls.TemplateColumn(); System.Web.UI.WebControls.TemplateColumn c5 = new System.Web.UI.WebControls.TemplateColumn(); c1.ItemTemplate = new t_EmptyLitTemplate(); c2.ItemTemplate = new t_PlainTextLitTemplate(); c3.ItemTemplate = new t_HtmlLitTemplate(); c4.ItemTemplate = new t_ControlLitTemplate(); c5.ItemTemplate = new t_DBLitTemplate(); c1.HeaderTemplate = new t_EmptyLitTemplate(); c2.HeaderTemplate = new t_PlainTextLitTemplate(); c3.HeaderTemplate = new t_HtmlLitTemplate(); c4.HeaderTemplate = new t_ControlLitTemplate(); c5.HeaderTemplate = new t_ControlLitTemplate(); DataGrid1.Columns.Add(c1); DataGrid1.Columns.Add(c2); DataGrid1.Columns.Add(c3); DataGrid1.Columns.Add(c4); DataGrid1.Columns.Add(c5); DataGrid1.DataBind();; } catch (Exception ex) { GHTSubTestUnexpectedExceptionCaught(ex); } GHTTestEnd(); }
private void AppendACLColumn(string sLABEL, string sDATA_FIELD, string sACCESS_TYPE) { TemplateColumn tpl = new TemplateColumn(); //tpl.HeaderText = sLABEL; tpl.ItemStyle.Width = new Unit("12%"); //tpl.ItemStyle.CssClass = "tabDetailViewDF"; tpl.ItemStyle.HorizontalAlign = HorizontalAlign.Center ; tpl.ItemStyle.VerticalAlign = VerticalAlign.NotSet ; tpl.ItemStyle.Wrap = false; tpl.ItemTemplate = new CreateItemTemplateACL(sDATA_FIELD, sACCESS_TYPE); tpl.HeaderTemplate = new CreateHeaderTemplateACL(sLABEL); this.Columns.Add(tpl); }
/// <summary> /// Sets up the columns for the Grid /// </summary> private void SetUpDataGrid() { Columns.Clear(); BoundColumn textCol = new BoundColumn(); textCol.HeaderText = ""; textCol.DataField = "RoleName"; Columns.Add( textCol ); BoundColumn idCol = new BoundColumn(); idCol.HeaderText = ""; idCol.DataField = "roleid"; idCol.Visible = false; Columns.Add( idCol ); m_Permissions = GetPermissions(); for( int i = 0; i < m_Permissions.Count; i++ ) { PermissionInfo objPermission; objPermission = (PermissionInfo)m_Permissions[i]; TemplateColumn checkCol = new TemplateColumn(); CheckBoxColumnTemplate columnTemplate = new CheckBoxColumnTemplate(); columnTemplate.DataField = objPermission.PermissionName; columnTemplate.EnabledField = objPermission.PermissionName + "_Enabled"; checkCol.ItemTemplate = columnTemplate; string locName = ""; if( objPermission.ModuleDefID > 0 ) { if( !String.IsNullOrEmpty(ResourceFile) ) { // custom permission locName = Localization.GetString( objPermission.PermissionName + ".Permission", ResourceFile ); } } else { // system permission locName = Localization.GetString( objPermission.PermissionName + ".Permission", Localization.GlobalResourceFile ); } checkCol.HeaderText = ( !String.IsNullOrEmpty(locName) ? locName : objPermission.PermissionName ).ToString(); checkCol.ItemStyle.HorizontalAlign = HorizontalAlign.Center; checkCol.HeaderStyle.Wrap = true; Columns.Add( checkCol ); } }
public TemplateColumnItem(TemplateColumn runtimeColumn) : base(runtimeColumn, 9) { }
private void SetUpGrid(DataGrid grid, string nameColumnDataField, string idColumnDataField, string permissionHeaderText) { grid.Columns.Clear(); var nameColumn = new BoundColumn { HeaderText = permissionHeaderText, DataField = nameColumnDataField }; nameColumn.ItemStyle.CssClass = "permissionHeader"; nameColumn.HeaderStyle.CssClass = "permissionHeader"; grid.Columns.Add(nameColumn); var idColumn = new BoundColumn { HeaderText = "", DataField = idColumnDataField, Visible = false }; grid.Columns.Add(idColumn); foreach (PermissionInfo permission in _permissions) { var templateCol = new TemplateColumn(); var columnTemplate = new PermissionTriStateTemplate(permission) { IsFullControl = IsFullControl(permission), IsView = IsViewPermisison(permission), SupportDenyMode = SupportsDenyPermissions(permission) }; templateCol.ItemTemplate = columnTemplate; var locName = (permission.ModuleDefID <= 0) ? Localization.GetString(permission.PermissionName + ".Permission", PermissionProvider.Instance().LocalResourceFile) //system permission : (!String.IsNullOrEmpty(ResourceFile) ? Localization.GetString(permission.PermissionName + ".Permission", ResourceFile) //custom permission : ""); templateCol.HeaderText = !String.IsNullOrEmpty(locName) ? locName : permission.PermissionName; templateCol.HeaderStyle.Wrap = true; grid.Columns.Add(templateCol); } var actionsColumn = new ImageCommandColumn { CommandName = "Delete/" + nameColumnDataField, KeyField = idColumnDataField, IconKey = "Delete", IconSize = "16x16", IconStyle = "PermissionGrid", HeaderText = Localization.GetString("PermissionActionsHeader.Text", PermissionProvider.Instance().LocalResourceFile) }; grid.Columns.Add(actionsColumn); grid.ItemCommand += grid_ItemCommand; }
private void DefineDGStructure() { int ObjectTypeId = int.Parse(pc["Subscription_ObjectType"]); DataTable source = SystemEvents.GetPersonalSubscriptionsDT(ObjectTypeId); // Data Grid definition grdMain.Columns.Clear(); BoundColumn idCol = new BoundColumn(); idCol.DataField = "EventTypeId"; idCol.Visible = false; grdMain.Columns.Add(idCol); BoundColumn titleCol = new BoundColumn(); titleCol.DataField = "Title"; titleCol.HeaderStyle.CssClass = "ibn-vh2"; titleCol.ItemStyle.CssClass = "ibn-vb2"; titleCol.HeaderText = LocRM.GetString("SystemEvent"); titleCol.ReadOnly = true; grdMain.Columns.Add(titleCol); foreach (DataColumn roleCol in source.Columns) { if (!roleCol.ColumnName.ToLower().StartsWith("role_")) continue; TemplateColumn imageCol = new TemplateColumn(); imageCol.HeaderStyle.Width = Unit.Pixel(75); imageCol.ItemStyle.Width = Unit.Pixel(75); imageCol.ItemTemplate = new DataGridImageTemplate(roleCol.ColumnName); imageCol.EditItemTemplate = new DataGridCheckBoxTemplate(roleCol.ColumnName); imageCol.HeaderStyle.CssClass = "ibn-vh3"; imageCol.ItemStyle.CssClass = "ibn-vb2"; imageCol.ItemStyle.HorizontalAlign = HorizontalAlign.Center; imageCol.HeaderText = LocRM.GetString(roleCol.ColumnName + "_singular"); grdMain.Columns.Add(imageCol); } TemplateColumn buttonCol = new TemplateColumn(); buttonCol.HeaderStyle.Width = Unit.Pixel(50); buttonCol.ItemStyle.Width = Unit.Pixel(50); buttonCol.ItemTemplate = new DataGridActionsTemplate(LocRM.GetString("RestoreDefaults"), LocRM.GetString("Edit")); buttonCol.EditItemTemplate = new DataGridEditActionsTemplate(LocRM.GetString("Save"), LocRM.GetString("Cancel")); buttonCol.HeaderStyle.CssClass = "ibn-vh3"; buttonCol.ItemStyle.CssClass = "ibn-vb2"; buttonCol.HeaderText = ""; grdMain.Columns.Add(buttonCol); BindData(source); }
public static void AppendGridColumns(string sGRID_NAME, DataGrid grd, UniqueStringCollection arrSelectFields) { if (grd == null) { return; } DataTable dt = CRMCache.GridViewColumns(sGRID_NAME); if (dt != null) { DataView dv = dt.DefaultView; dv.Sort = "COLUMN_INDEX"; bool bEnableTeamManagement = Common.Config.enable_team_management(); foreach (DataRowView row in dv) { int nCOLUMN_INDEX = TypeConvert.ToInteger(row["COLUMN_INDEX"]); string sCOLUMN_TYPE = TypeConvert.ToString(row["COLUMN_TYPE"]); string sHEADER_TEXT = TypeConvert.ToString(row["HEADER_TEXT"]); string sSORT_EXPRESSION = TypeConvert.ToString(row["SORT_EXPRESSION"]); string sITEMSTYLE_WIDTH = TypeConvert.ToString(row["ITEMSTYLE_WIDTH"]); string sITEMSTYLE_CSSCLASS = TypeConvert.ToString(row["ITEMSTYLE_CSSCLASS"]); string sITEMSTYLE_HORIZONTAL_ALIGN = TypeConvert.ToString(row["ITEMSTYLE_HORIZONTAL_ALIGN"]); string sITEMSTYLE_VERTICAL_ALIGN = TypeConvert.ToString(row["ITEMSTYLE_VERTICAL_ALIGN"]); bool bITEMSTYLE_WRAP = TypeConvert.ToBoolean(row["ITEMSTYLE_WRAP"]); string sDATA_FIELD = TypeConvert.ToString(row["DATA_FIELD"]); string sDATA_FORMAT = TypeConvert.ToString(row["DATA_FORMAT"]); string sURL_FIELD = TypeConvert.ToString(row["URL_FIELD"]); string sURL_FORMAT = TypeConvert.ToString(row["URL_FORMAT"]); string sURL_TARGET = TypeConvert.ToString(row["URL_TARGET"]); string sLIST_NAME = TypeConvert.ToString(row["LIST_NAME"]); string sURL_MODULE = TypeConvert.ToString(row["URL_MODULE"]); string sURL_ASSIGNED_FIELD = TypeConvert.ToString(row["URL_ASSIGNED_FIELD"]); if (arrSelectFields != null) { arrSelectFields.Add(sDATA_FIELD); if (!TypeConvert.IsEmptyString(sSORT_EXPRESSION)) arrSelectFields.Add(sSORT_EXPRESSION); if (!TypeConvert.IsEmptyString(sURL_FIELD)) { if (sURL_FIELD.IndexOf(' ') >= 0) arrSelectFields.AddRange(sURL_FIELD.Split(' ')); else arrSelectFields.Add(sURL_FIELD); if (!TypeConvert.IsEmptyString(sURL_ASSIGNED_FIELD)) arrSelectFields.Add(sURL_ASSIGNED_FIELD); } } HorizontalAlign eHorizontalAlign = HorizontalAlign.NotSet; switch (sITEMSTYLE_HORIZONTAL_ALIGN.ToLower()) { case "left": eHorizontalAlign = HorizontalAlign.Left; break; case "right": eHorizontalAlign = HorizontalAlign.Right; break; } VerticalAlign eVerticalAlign = VerticalAlign.NotSet; switch (sITEMSTYLE_VERTICAL_ALIGN.ToLower()) { case "top": eVerticalAlign = VerticalAlign.Top; break; case "middle": eVerticalAlign = VerticalAlign.Middle; break; case "bottom": eVerticalAlign = VerticalAlign.Bottom; break; } if (row["ITEMSTYLE_WRAP"] == DBNull.Value) bITEMSTYLE_WRAP = true; DataGridColumn col = null; if (String.Compare(sCOLUMN_TYPE, "BoundColumn", true) == 0 && (String.Compare(sDATA_FORMAT, "Date", true) == 0 || String.Compare(sDATA_FORMAT, "DateTime", true) == 0 || String.Compare(sDATA_FORMAT, "Currency", true) == 0 || String.Compare(sDATA_FORMAT, "Image", true) == 0 ) ) { sCOLUMN_TYPE = "TemplateColumn"; } if (String.Compare(sCOLUMN_TYPE, "BoundColumn", true) == 0) { if (TypeConvert.IsEmptyString(sLIST_NAME)) { BoundColumn bnd = new BoundColumn(); bnd.HeaderText = sHEADER_TEXT; bnd.DataField = sDATA_FIELD; bnd.SortExpression = sSORT_EXPRESSION; bnd.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); bnd.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; bnd.ItemStyle.HorizontalAlign = eHorizontalAlign; bnd.ItemStyle.VerticalAlign = eVerticalAlign; bnd.ItemStyle.Wrap = bITEMSTYLE_WRAP; bnd.HeaderStyle.HorizontalAlign = eHorizontalAlign; col = bnd; } else { TemplateColumn tpl = new TemplateColumn(); tpl.HeaderText = sHEADER_TEXT; tpl.SortExpression = sSORT_EXPRESSION; tpl.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemStyle.HorizontalAlign = eHorizontalAlign; tpl.ItemStyle.VerticalAlign = eVerticalAlign; tpl.ItemStyle.Wrap = bITEMSTYLE_WRAP; tpl.HeaderStyle.HorizontalAlign = eHorizontalAlign; tpl.ItemTemplate = new CreateItemTemplateLiteralList(sDATA_FIELD, sLIST_NAME); col = tpl; } } else if (String.Compare(sCOLUMN_TYPE, "TemplateColumn", true) == 0) { TemplateColumn tpl = new TemplateColumn(); tpl.HeaderText = sHEADER_TEXT; tpl.SortExpression = sSORT_EXPRESSION; tpl.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemStyle.HorizontalAlign = eHorizontalAlign; tpl.ItemStyle.VerticalAlign = eVerticalAlign; tpl.ItemStyle.Wrap = bITEMSTYLE_WRAP; tpl.HeaderStyle.HorizontalAlign = eHorizontalAlign; if (String.Compare(sDATA_FORMAT, "HyperLink", true) == 0) { if (sURL_FIELD.IndexOf(' ') >= 0) tpl.ItemTemplate = new CreateItemTemplateHyperLinkOnClick(sDATA_FIELD, sURL_FIELD, sURL_FORMAT, sURL_TARGET, sITEMSTYLE_CSSCLASS, sURL_MODULE, sURL_ASSIGNED_FIELD); else tpl.ItemTemplate = new CreateItemTemplateHyperLink(sDATA_FIELD, sURL_FIELD, sURL_FORMAT, sURL_TARGET, sITEMSTYLE_CSSCLASS, sURL_MODULE, sURL_ASSIGNED_FIELD); } else if (String.Compare(sDATA_FORMAT, "Image", true) == 0) { tpl.ItemTemplate = new CreateItemTemplateImage(sDATA_FIELD, sITEMSTYLE_CSSCLASS); } else { tpl.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; tpl.ItemTemplate = new CreateItemTemplateLiteral(sDATA_FIELD, sDATA_FORMAT); } col = tpl; } else if (String.Compare(sCOLUMN_TYPE, "HyperLinkColumn", true) == 0) { HyperLinkColumn lnk = new HyperLinkColumn(); lnk.HeaderText = sHEADER_TEXT; lnk.DataTextField = sDATA_FIELD; lnk.SortExpression = sSORT_EXPRESSION; lnk.DataNavigateUrlField = sURL_FIELD; lnk.DataNavigateUrlFormatString = sURL_FORMAT; lnk.Target = sURL_TARGET; lnk.ItemStyle.Width = new Unit(sITEMSTYLE_WIDTH); lnk.ItemStyle.CssClass = sITEMSTYLE_CSSCLASS; lnk.ItemStyle.HorizontalAlign = eHorizontalAlign; lnk.ItemStyle.VerticalAlign = eVerticalAlign; lnk.ItemStyle.Wrap = bITEMSTYLE_WRAP; lnk.HeaderStyle.HorizontalAlign = eHorizontalAlign; col = lnk; } if (col != null) { if (sDATA_FIELD == "TEAM_NAME" && !bEnableTeamManagement) { col.Visible = false; } if (nCOLUMN_INDEX >= grd.Columns.Count) grd.Columns.Add(col); else grd.Columns.AddAt(nCOLUMN_INDEX, col); } } } }