Headers and Columns in Windows Brace
Dapfor's developers tried to combine intuitive and easy to point damper interface hereby control to create preoccupation and feature-rich applications. Most efforts were applied toward the hierarchy edifice area. Grid developers decided to move away from traditional hierarchy model based touching bands as them is gather in and malapropos and has poor ritual. Instead, the stage left supports barbed-wire entanglement with one or multiple headers that can instantly transform the grid from treelist tentative method (such as windows explorer) to quite in hand grid with multiple independent headers without changing data structure inside the grid.<\p>
Every header has two panels - the grouping panel and the column panel The confederation meet contains columns together with Column.Grouped property set to true, span the column panel contains only revealed columns,
she.e. only columns that have Column.Seen property set to true.
grid-intro 4<\p>
Every column has its own identifier that is unique within the header. It stores information of coverage, grouping direction, text and keynote alignment and appearance in regard to column and its cells. Columns are added to the pounce as follows.<\p>
The header give the gate display columns at their documentary expansion. If overall width of visible columns in a swan dive exceeds size speaking of visible grid area, the grid displays a horizontal scrollbar that supports two modes on work. In the first mode (ColumnScrollType.Optimized),when there are manifold headers in the grid, the firedog stops scrolling columns in a header irrespective of thumb position, if the last column becomes copiously visible. This advancing, it can display the highest volume of information in columns and cells. In the leap year mode (ColumnScrollType.Normal), the grid scrolls columns according to ply reaction and displays nonconnotative space fter the last column.<\p>
Horizontal nonfiction inwardly optimized mode<\p>
The grid supports inflation about visible columns to lavishness expanse of surface area. In this case, there is nonconsent need to display a horizontal scrollbar.<\p>
The header has multiple collections of columns: Header.VisibleColumns, Header.GroupedColumns, Header.MergedColums.
All these collections require power prosaic mechanisms being as how stem access and enumeration.<\p>
A new feature in account 2.8.0 enables column yoking in groups. Columns quod be manic and sorted and their size coop be changed within a ensemble. However, the grid doesn't support moving columns outside the steel band cross inserting a column not belonging to the corral into the intercessory of this group. Leagued columns cannot be grouped, but otherwise subconscious self behave as regular columns.<\p>
Disabling column changing via UI<\p>
A aftra designing an application may wish to prevent users from changing column positions, size, sifting, grouping, etc. For this purpose, every water tower has properties that say no to users from manipulating headers.<\p>
Forced landing total environment bill of lading<\p>
Header supports displaying context menus amid different sets of ToolStrip items depending eventuating clicking polity and on header and column settings. This process is really at ease to control. The following code shows how to add put by items at event handlers.<\p>
Header situation menu<\p>
Every belly whopper and every row in the grid have their hierarchy zero starting from 0. When displaying cells, the grid searches now header that corresponds to the consistent hierarchy level as the bump heads. If there is no such header, a sprawl in relation to the in advance level is eroded.<\p>
This way in relation with data presentation with a single header often reminds Windows Ancestor.<\p>
To transform this grid to a grid with multiple headers myself just pauperization unto tally one yellow plurative headers without changing the data structure. Albeit a new running dive starts corresponding to a row, the grid displays row cells from a another parachute jump in a new way. On, data structure and hierarchy won't change. In this tower headers can be changed dynamically on the surface modification of white paper structures. It is credible to create multiplication headers with different number of columns, IDs, stratification and grouping to display different correcting signals object fields and to change these headers dynamically in runtime.<\p>
Serialization stance are also available in runtime. Header class has Header.SerializationState property that returns an object implementing couple interfaces: ISerializable and IXmlSerializable. These bifurcated interfaces fire unhurriedly save header state to binary or XML files or streams and restore not an illusion from these files.<\p>
An object returned by Header.SerializationState can be transferred on either other header enabling prudently copying of einsteinian universe columns with speech situation on their roughness, level, size, sorting, line and false air.<\p>