public List<DocumentsDisplayColumnInfo> GetDisplayColumnList (string localResourceFile) { var objColumnSettings = new List<DocumentsDisplayColumnInfo> (); if (!string.IsNullOrWhiteSpace (DisplayColumns)) { // read "saved" column sort orders in first foreach (var strColumn in DisplayColumns.Split( new [] {','}, StringSplitOptions.RemoveEmptyEntries)) { var strColumnData = strColumn.Split (new [] { ';' }, StringSplitOptions.RemoveEmptyEntries); var strColumnName = strColumnData [0]; if (DocumentsDisplayColumnInfo.AvailableDisplayColumns.Contains (strColumnName)) { var objColumnInfo = new DocumentsDisplayColumnInfo () { ColumnName = strColumnName, DisplayOrder = objColumnSettings.Count + 1, Visible = bool.Parse (strColumnData [1]), LocalizedColumnName = Localization.GetString (strColumnName + ".Header", localResourceFile) }; objColumnSettings.Add (objColumnInfo); } } } return objColumnSettings; }
/// ----------------------------------------------------------------------------- /// <summary> /// LoadSettings loads the settings from the Databas and displays them /// </summary> /// <remarks> /// </remarks> /// <history> /// </history> /// ----------------------------------------------------------------------------- public override void LoadSettings () { DocumentsDisplayColumnInfo objColumnInfo = null; try { if (!IsPostBack) { LoadLists (); chkShowTitleLink.Checked = DocumentsSettings.ShowTitleLink; chkUseCategoriesList.Checked = DocumentsSettings.UseCategoriesList; chkAllowUserSort.Checked = DocumentsSettings.AllowUserSort; Utils.SelectByValue (comboGridStyle, DocumentsSettings.GridStyle); try { if (DocumentsSettings.DefaultFolder != null) { folderDefaultFolder.SelectedFolder = FolderManager.Instance.GetFolder (DocumentsSettings.DefaultFolder.Value); } } catch { // suppress exception. Can be caused if the selected folder has been deleted } try { cboCategoriesList.SelectedValue = DocumentsSettings.CategoriesListName; } catch { // suppress exception. Can be caused if the selected list has been deleted } // read "saved" column sort orders in first var objColumnSettings = DocumentsSettings.DisplayColumnList; foreach (DocumentsDisplayColumnInfo objColumnInfo_loopVariable in objColumnSettings) { objColumnInfo = objColumnInfo_loopVariable; // Set localized column names objColumnInfo.LocalizedColumnName = Localization.GetString (objColumnInfo.ColumnName + ".Header", base.LocalResourceFile); } // Add any missing columns to the end foreach (string strColumnName_loopVariable in DocumentsDisplayColumnInfo.AvailableDisplayColumns) { var strColumnName = strColumnName_loopVariable; if (DocumentsSettings.FindColumn (strColumnName, objColumnSettings, false) < 0) { objColumnInfo = new DocumentsDisplayColumnInfo (); objColumnInfo.ColumnName = strColumnName; objColumnInfo.LocalizedColumnName = Localization.GetString (objColumnInfo.ColumnName + ".Header", base.LocalResourceFile); objColumnInfo.DisplayOrder = objColumnSettings.Count + 1; objColumnInfo.Visible = false; objColumnSettings.Add (objColumnInfo); } } // Sort by DisplayOrder BindColumnSettings (objColumnSettings); // Load sort columns string strSortColumn = null; ArrayList objSortColumns = new ArrayList (); foreach (string strSortColumn_loopVariable in DocumentsDisplayColumnInfo.AvailableSortColumns) { strSortColumn = strSortColumn_loopVariable; comboSortFields.AddItem (LocalizeString (strSortColumn + ".Header"), strSortColumn); } BindSortSettings (DocumentsSettings.GetSortColumnList (this.LocalResourceFile)); // load grid style Utils.SelectByValue (comboGridStyle, DocumentsSettings.GridStyle); } //Module failed to load } catch (Exception exc) { Exceptions.ProcessModuleLoadException (this, exc); } }
private List<DocumentsDisplayColumnInfo> RetrieveDisplayColumnSettings () { // Custom viewstate implementation to avoid reflection var objDisplayColumnSettings = new List<DocumentsDisplayColumnInfo> (); DocumentsDisplayColumnInfo objDisplayColumnInfo = null; string strValues = null; strValues = Convert.ToString (ViewState [VIEWSTATE_DISPLAYCOLUMNSETTINGS]); if (!string.IsNullOrEmpty (strValues)) { foreach (string strDisplayColumnSetting in strValues.Split('#')) { objDisplayColumnInfo = new DocumentsDisplayColumnInfo (); objDisplayColumnInfo.ColumnName = strDisplayColumnSetting.Split (char.Parse (",")) [0]; objDisplayColumnInfo.LocalizedColumnName = strDisplayColumnSetting.Split (char.Parse (",")) [1]; objDisplayColumnInfo.DisplayOrder = Convert.ToInt32 (strDisplayColumnSetting.Split (char.Parse (",")) [2]); objDisplayColumnInfo.Visible = Convert.ToBoolean (strDisplayColumnSetting.Split (char.Parse (",")) [3]); objDisplayColumnSettings.Add (objDisplayColumnInfo); } } return objDisplayColumnSettings; }