public bool[] GetCheckedValues(GridViewExt grid) { int columnIndex = grid.Columns.IndexOf(this); bool[] values = new bool[grid.Rows.Count]; for (int i = 0; i < values.Length; i++) { foreach (Control control in grid.Rows[i].Cells[columnIndex].Controls) { CheckBox chk = control as CheckBox; if (chk != null) { values[i] = chk.Checked; break; } } } return(values); }
/// <summary> /// Exporta la informaci de un dataGridView a Excel /// </summary> /// <param name="dataGridView">DataGridView de origen</param> /// <param name="pFullPath_toExport">Ruta del archivo exportado</param> /// <param name="nameSheet">Nombre de la hoja</param> /// <param name="showExcel">Mostrar excel?</param> public void dataGridView2Excel(DataGridView dataGridView, string pFullPath_toExport, string nameSheet) { Object obj = dataGridView.DataSource; System.Data.DataTable dt = new System.Data.DataTable(); //update by I.TYOU 20141031 カスタム改ページグリッド「GridViewExt」の対応 start ////Obtener un datatable del datagridview //if(dataGridView.DataSource is DataSet) //{ // if (((System.Data.DataSet)dataGridView.DataSource).Tables.Count > 0) // dt = ((System.Data.DataSet)dataGridView.DataSource).Tables[0]; // else // dt = new System.Data.DataTable(); //} //else if(dataGridView.DataSource is System.Data.DataTable) //{ // dt = (System.Data.DataTable)dataGridView.DataSource; //} //else if (dataGridView.DataSource is ArrayList) //{ // ArrayList arr = (ArrayList)dataGridView.DataSource; // dt = ArrayListToDataTable(arr); //} if (dataGridView is GridViewExt) { GridViewExt gve = dataGridView as GridViewExt; dt = getDataSource(gve.DreamDataSoure); } else { dt = getDataSource(dataGridView.DataSource); } //update by I.TYOU 20141031 カスタム改ページグリッド「GridViewExt」の対応 end //DataTable2Excel(dt, dataGridView, pFullPath_toExport, nameSheet); ExcelManager.DataTable2Excel(dt, pFullPath_toExport, nameSheet); }
public Array GetValues(GridViewExt grid) { return(GetCheckedValues(grid)); }
protected override void OnInit(EventArgs e) { base.OnInit(e); if (DesignMode) { return; } Panel panel = new Panel(); Controls.Add(panel); panel.Style["position"] = "relative"; // Filters' list collapseImage = new Image(); collapseImage.ID = "collapseImageID"; panel.Controls.Add(collapseImage); collapseImage.Style["position"] = "absolute"; collapseImage.Style["right"] = "4px"; collapseImage.Style["top"] = "0px"; collapseImage.Style["cursor"] = "hand"; collapseImage.Style["z-index"] = "1"; Panel filterContainerPanel = new Panel(); filterContainerPanel.ID = "filterContaiterPanelID"; panel.Controls.Add(filterContainerPanel); filterContainerPanel.GroupingText = LookupControlsResources.SFilterCriteria; columnFilterList = GetColumnFilterList(); columnFilterList.ID = "columnFilterListID"; columnFilterList.ColumnFilterListCreating += ColumnFilterList_OnColumnFilterListCreating; columnFilterList.PopupBehaviorParentNode = ClientID; filterContainerPanel.Controls.Add(columnFilterList); columnFilterList.DataSourceID = dataSourceID; columnFilterList.DataSource = dataSource; columnFilterList.ShowFullBriefViewButton = showFullBriefViewButton; CollapsiblePanelExtender collapsiblePanelExtender = new CollapsiblePanelExtender(); panel.Controls.Add(collapsiblePanelExtender); collapsiblePanelExtender.TargetControlID = filterContainerPanel.ID; collapsiblePanelExtender.ExpandControlID = collapseImage.ID; collapsiblePanelExtender.CollapseControlID = collapseImage.ID; collapsiblePanelExtender.ImageControlID = collapseImage.ID; collapsiblePanelExtender.CollapsedImage = Page.ClientScript.GetWebResourceUrl(GetType(), "Nat.Web.Controls.Lookup.control_fastforward_blue.png"); collapsiblePanelExtender.ExpandedImage = Page.ClientScript.GetWebResourceUrl(GetType(), "Nat.Web.Controls.Lookup.control_rewind_blue.png"); collapsiblePanelExtender.ExpandedText = LookupControlsResources.SHideFilter; collapsiblePanelExtender.CollapsedText = LookupControlsResources.SShowFilter; collapsiblePanelExtender.CollapsedSize = 17; // UpdatePanel for GridView updatePanel = new UpdatePanel(); updatePanel.ID = "updatePanelID"; updatePanel.UpdateMode = UpdatePanelUpdateMode.Conditional; panel.Controls.Add(updatePanel); // HiddenField hiddenField = new HiddenField(); hiddenField.ID = "hiddenFieldID"; //panel.Controls.Add(hiddenField); updatePanel.ContentTemplateContainer.Controls.Add(hiddenField); hiddenField.ValueChanged += HiddenField_OnValueChanged; // GridView gridContainerPanel = new Panel(); gridContainerPanel.ID = "gridContainerPanelID"; updatePanel.ContentTemplateContainer.Controls.Add(gridContainerPanel); gridContainerPanel.Style["clear"] = "both"; gridPanel = new Panel(); gridPanel.ID = "gridPanelID"; gridContainerPanel.Controls.Add(gridPanel); gridPanel.ScrollBars = ScrollBars.Auto; gridPanel.Height = GridHeight; gridView = new GridViewExt(); gridView.ID = "gridViewID"; gridView.DataKeyNames = dataKeyNames; gridView.UseDeleteField = allowMultiSelectColumn; gridView.DeleteFieldColumnCaption = multiSelectColumnCaption; gridView.DataSourceID = "666"; gridView.DataSourceID = ""; gridView.DataSourceID = dataSourceID; gridView.DataSource = dataSource; gridPanel.Controls.Add(gridView); gridView.EmptyDataText = EmptyDataText; gridView.AllowSorting = allowSorting; gridView.PageIndexChanged += GridView_OnPageIndexChanged; gridView.Sorted += GridView_OnSorted; gridView.PagerSettings.Mode = PagerButtons.NumericFirstLast; gridView.PagerSettings.PageButtonCount = 5; gridView.DataBound += GridView_OnDataBound; gridViewExtender = new GridViewExtender(); gridViewExtender.ID = "gridViewExtenderID"; gridPanel.Controls.Add(gridViewExtender); gridViewExtender.TargetControlID = gridView.ID; gridViewExtender.DataDisableRowField = dataDisableRowField; gridViewExtender.ConditionValue = conditionValue; // Hidden apply filter button applyButton = new Button(); applyButton.ID = "applyButtonID"; updatePanel.ContentTemplateContainer.Controls.AddAt(0, applyButton); applyButton.Click += ApplyButton_OnClick; applyButton.Text = "Apply Filter"; applyButton.Style["float"] = "right"; applyButton.Style["display"] = "none"; }
protected virtual void CreateGridView() { if (_storage == null) { throw new NullReferenceException("ColumnFilterStorage must be specified"); } var table = new Table(); Controls.Add(table); table.Width = Width; table.Style["table-layout"] = "fixed"; //table.CssClass = "ms-gridtext"; table.Rows.Add(new TableRow()); table.Rows[0].Cells.Add( new TableCell { Text = string.Format("<div style='width:170px;'>{0}</div>", GetStorage().Caption), Width = Unit.Pixel(170), HorizontalAlign = HorizontalAlign.Right, }); table.Rows[0].Cells.Add(new TableCell { Width = Unit.Percentage(100) }); table.Rows[0].Cells[0].Style["padding-right"] = "6px"; table.Rows[0].Cells[1].Style["padding-right"] = "6px"; DataTable filterRefTable = DataSourceHelper.GetDataTable(DataSource); panel = new Panel(); panel.ID = "panel_ID"; panel.Width = Unit.Percentage(100); panel.Height = PanelHeight; panel.ScrollBars = ScrollBars.Auto; panel.BorderWidth = 1; panel.BorderColor = Color.LightGray; table.Rows[0].Cells[1].Controls.Add(panel); Initialization(); panel.Controls.Add(tableDataSource); gridViewExt = new GridViewExt(); gridViewExt.ID = "gridViewExt_ID"; gridViewExt.DataKeyNames = new string[] { ValueMember }; gridViewExt.AutoGenerateColumns = false; gridViewExt.AllowNewButtonForTree = false; gridViewExt.Height = Unit.Percentage(100); gridViewExt.Width = Unit.Percentage(100); gridViewExt.EmptyDataText = Resources.SEmptyDataText; gridViewExt.UseDeleteField = true; gridViewExt.AllowPaging = (bool)(DataSetResourceManager.GetTableExtProperty(filterRefTable, TableExtProperties.ALLOW_PAGING) ?? true); if ((Boolean)(DataSetResourceManager.GetTableExtProperty(filterRefTable, TableExtProperties.IS_TREE_REF) ?? false)) { gridViewExt.AllowPaging = false; gridViewExt.ShowAsTree = true; gridViewExt.RelationName = DataSetResourceManager.GetTableExtProperty( filterRefTable, TableExtProperties.TREE_REF_RELATION).ToString(); } tableDataSource.View.EnablePaging = gridViewExt.AllowPaging; gridViewExt.DataSourceID = tableDataSource.ID; foreach (DataColumn dc in tableDataSource.Table.Columns) { Boolean showColumn = (Boolean)(DataSetResourceManager.GetColumnExtProperty(dc, ColumnExtProperties.VISIBLE) ?? false); string visibleCulture = (string)(DataSetResourceManager.GetColumnExtProperty(dc, ColumnExtProperties.VISIBLE_CULTURE)); if (showColumn && (string.IsNullOrEmpty(visibleCulture) || System.Threading.Thread.CurrentThread.CurrentUICulture.Name == visibleCulture)) { String columnCaption = (String)(DataSetResourceManager.GetColumnExtProperty(dc, ColumnExtProperties.CAPTION) ?? dc.Caption); BoundField boundField = new BoundField(); boundField.DataField = dc.ColumnName; boundField.HeaderText = columnCaption; boundField.HeaderStyle.Height = new Unit(25, UnitType.Pixel); boundField.SortExpression = dc.ColumnName; Boolean htmlEncode = (Boolean)(DataSetResourceManager.GetColumnExtProperty(dc, ColumnExtProperties.HTML_ENCODED) ?? false); boundField.HtmlEncode = htmlEncode; gridViewExt.Columns.Add(boundField); } } var boundColumns = gridViewExt.Columns.OfType <BoundField>().Where(r => !string.IsNullOrEmpty(r.DataField)).ToList(); if (boundColumns.Count == 1) { boundColumns[0].HeaderStyle.Width = new Unit(100, UnitType.Percentage); } table.Rows[0].Cells[1].Controls.Add(GetSearchPanel()); if (gridViewExt.AllowPaging) { checkedIds = new HiddenField { ID = "checkedIds" }; if (_storage.Values == null || _storage.Values.Length == 0) { checkedIds.Value = ""; } else { checkedIds.Value = string.Join(",", _storage.Values.Select(Convert.ToString).ToArray()); } Controls.Add(checkedIds); } panel.Controls.Add(gridViewExt); var searchValue = Page.Request.Params[QuickSearchTextBox.UniqueID]; if (!string.IsNullOrEmpty(searchValue) && gridViewExt.AllowPaging) { var searchCondition = new QueryCondition { Conditions = new QueryConditionList { ConditionJunction = ConditionJunction.Or } }; foreach (DataColumn dc in tableDataSource.Table.Columns) { var showColumn = (Boolean)(DataSetResourceManager.GetColumnExtProperty(dc, ColumnExtProperties.VISIBLE) ?? false); if (showColumn) { searchCondition.Conditions.Add( new QueryCondition(dc.ColumnName, ColumnFilterType.Contains, searchValue, null)); } } tableDataSource.View.CustomConditions.Add(searchCondition); } if (checkedIds != null) { var checkedField = (CheckedField)gridViewExt.GetIGridColumn("cfDelete"); checkedField.OnChanged = string.Format("{0}(this);", GetCheckChangedFunctionName()); checkedField.OnChangedAll = string.Format("{0}(this);", GetCheckChangedAllFunctionName()); } }
public Array GetValues(GridViewExt grid) { throw new NotImplementedException(); }