Prerequisite Knowledge DataGrid Fundamentals: Views and Themes Overview |
The Tableflow™ view is represented by the TableflowView class. It differs greatly from the TableView class from which it derives. It provides a rich, fluid, and high performance user experience, featuring a capabilities such as inertial smooth scrolling and animated full-column reordering, which mimic the physics of real-life movement.
The rows in the Tableflow™ view flow smoothly into the viewport, rather than simply popping into existence. This lets the end-user more easily see the data as it moves into view. Furthermore, smooth scrolling is supported when the data source is virtualized, which further improves the user experience.
The behavior of smooth scrolling is controlled through the RowFadeInAnimationDuration and ScrollingAnimationDuration properties, which represent the duration of these effects in milliseconds.
The headers, footers (in groups and in master/detail), and parent rows in the viewport can be set so that they are "sticky". That is, while the end-user scrolls through data, the element is pinned and remains visible at the top or the bottom of the viewport until the data contained in that section has moved beyond the viewport. This is true whether the end-user is using the keyboard or the mouse (scrollbar or scroll wheel).
The following table lists the properties that control this aspect of the Table.
Table 1: Sticky properties
Property | Description |
---|---|
AreFootersSticky | Gets or sets a value indicating whether the view's footers are sticky. |
AreGroupFootersSticky | Gets or sets a value indicating whether the view's group footers are sticky. |
AreGroupHeadersSticky | Gets or sets a value indicating whether the view's group headers are sticky. |
AreHeadersSticky | Gets or sets a value indicating whether the view's headers are sticky. |
AreParentRowsSticky | Gets or sets a value indicating whether the view's parent rows are sticky. |
When the IsAnimatedColumnReorderingEnabled property is set to true, dragging a column header results in the entire column being visible as it is moved, rather than simply the column header as is the case with TableView. This again improves the user's experience by letting him or her see what is being moved.
When the AreGroupsFlattened property is set to true, all groups are shifted to the left in the viewport and are aligned with the top-most group (i.e., they are not indented).
The GroupNavigationControl is displayed when the mouse pointer hovers over a group name in the group header. When clicked the group will be moved to the top of the viewport.
It is active by default and cannot be disabled.
Note: The GroupNavigationControl replaces the GroupNavigationButton.