Skip to content

Other - Page builder

A palette, a page and a bin. A block dragged from the palette is a copy (DropEffect="copy"): the palette keeps it, and the page gets a new block where the line shows - before or after the block it is dropped on, or at the end. A block of the page moves within it, or into the bin; the bin takes no palette block (CanDropPredicate). One item type carries both: the kind of a new block, or the block itself. The page holds 6 blocks at most: once it is full, the palette's CanDragPredicate answers false - asked as the palette renders and again as a drag starts - so its blocks render draggable="false" and leave the tab order until a block goes into the bin. With the keyboard, Space on a palette block picks up a copy, and the arrows step through the places between the page's blocks.

  • Heading
  • Text
  • Image
  • Button
Heading 1
Text 1
Bin

Page: Heading 1, Text 1

2 of 6 blocks.

An unhandled error has occurred. Reload 🗙