The KryptonPage has two new flags…
- AllowPageDrag
- AllowPageReorder
These are used in conjunction with the Navigator flags of the same name to decide if the page can be dragged out of the navigator control or reordered. This provides per-page control over the actions rather than having the same restriction applied to all pages.
A new Navigator event called BeforePageReorder is also added that allows you to cancel the movement of a page during reordering actions. This allows the following common scenario to be implemented.
If you have a page that you want to remain always at the start of the set of pages then you can set the AllowPageReorder flag to False for that page. This prevents the user from being able to reorder that individual page. Then you can intercept the BeforePageReorder event and Cancel the event any time a page wants to be moved before our first page. Now you have a setup where all but the first page can be reordered but none of the pages can be moved before the first one. You could also implement more complex requirements such as always keeping a particular page after another in the list of pages. Although anything that complex is likely to confuse the user.
Note that these new flags and event only relate to user dragging actions. You can still add a page anywhere you like programmatically.
December 30th, 2009 at 10:05 pm
Phil, that’s great news! Thanks for listening and I’m sure this small feature extension will make others happy as well.
cheers and a happy new year!
Stefan