//*************************************************************************** // Class Constructors // public FixedColumnListView() { //this._colWeight = new Int32Collection(); this._cols = new FixedColumnHeaderCollection(this); this._cols.ColumnAdded += new FixedColumnHeaderCollection.ColumnChangedEventHandler(this.columns_onColumnAdded); this._cols.ColumnRemoved += new FixedColumnHeaderCollection.ColumnChangedEventHandler(this.columns_onColumnRemoved); this._cols.ColumnsCleared += new EventHandler(this.columns_onClear); this._colResize = false; this.AllowColumnReorder = false; this.View = View.Details; }
//*************************************************************************** // Public Methods // //public ColumnHeader AddColumn(string colName, string colText, int size) //{ // this._colWeight.Add(size); // ColumnHeader newCol = new ColumnHeader(); // newCol.Name = colName; // newCol.Text = colText; // this.Columns.Add(newCol); // return newCol; //} #endregion #region Private Methods //*************************************************************************** // Private Methods // protected void SetColWidths() { this._colResize = true; FixedColumnHeaderCollection shr = new FixedColumnHeaderCollection(this); int defWidth = 0; for (int i = 0; i < this.Columns.Count; i++) { switch (this.Columns[i].SizeType) { case SizeType.Absolute: this.Columns[i].Width = this.Columns[i].Width; defWidth += this.Columns[i].Width; break; case SizeType.Percent: this.Columns[i].Width = ((this.ClientRectangle.Width - 1) * this.Columns[i].Width) / 100; defWidth += this.Columns[i].Width; break; case SizeType.AutoSize: shr.Add(this.Columns[i]); break; } } foreach (FixedColumnHeader colHeader in shr) { colHeader.Width = ((this.ClientRectangle.Width - 1) - defWidth) / shr.Count; } //for (int i = 0; i < this.Columns.Count; i++) // if (this._colWeight.Count > i) // this.Columns[i].Width = ((this.ClientRectangle.Width - 1) * this._colWeight[i]) / 100; // //else // // this.Columns[i].Width = 60; this._colResize = false; }
//*************************************************************************** // Public Methods // //public ColumnHeader AddColumn(string colName, string colText, int size) //{ // this._colWeight.Add(size); // ColumnHeader newCol = new ColumnHeader(); // newCol.Name = colName; // newCol.Text = colText; // this.Columns.Add(newCol); // return newCol; //} #endregion #region Private Methods //*************************************************************************** // Private Methods // protected void SetColWidths() { this._colResize = true; FixedColumnHeaderCollection shr = new FixedColumnHeaderCollection(this); int defWidth = 0; for(int i=0;i<this.Columns.Count;i++) switch (this.Columns[i].SizeType) { case SizeType.Absolute: this.Columns[i].Width = this.Columns[i].Width; defWidth += this.Columns[i].Width; break; case SizeType.Percent: this.Columns[i].Width = ((this.ClientRectangle.Width - 1) * this.Columns[i].Width) / 100; defWidth += this.Columns[i].Width; break; case SizeType.AutoSize: shr.Add(this.Columns[i]); break; } foreach (FixedColumnHeader colHeader in shr) colHeader.Width = ((this.ClientRectangle.Width - 1) - defWidth) / shr.Count; //for (int i = 0; i < this.Columns.Count; i++) // if (this._colWeight.Count > i) // this.Columns[i].Width = ((this.ClientRectangle.Width - 1) * this._colWeight[i]) / 100; // //else // // this.Columns[i].Width = 60; this._colResize = false; }
//*************************************************************************** // Class Constructors // public FixedColumnListView() { //this._colWeight = new Int32Collection(); this._cols = new FixedColumnHeaderCollection(this); this._cols.ColumnAdded += new FixedColumnHeaderCollection.ColumnChangedEventHandler(this.columns_onColumnAdded); this._cols.ColumnRemoved += new FixedColumnHeaderCollection.ColumnChangedEventHandler(this.columns_onColumnRemoved); this._cols.ColumnsCleared += new EventHandler(this.columns_onClear); this._colResize = false; this.AllowColumnReorder = false; this.View = View.Details; }