Skip to content

Add docs for ContentPage, NavigationPage, TabbedPage, DrawerPage, and CommandBar#902

Open
jsuarezruiz wants to merge 9 commits intomainfrom
page-type-navigation-docs
Open

Add docs for ContentPage, NavigationPage, TabbedPage, DrawerPage, and CommandBar#902
jsuarezruiz wants to merge 9 commits intomainfrom
page-type-navigation-docs

Conversation

@jsuarezruiz
Copy link
Copy Markdown
Member

@jsuarezruiz jsuarezruiz commented Mar 6, 2026

Changes:

  • Adds reference documentation for the five native Avalonia Page controls: ContentPage, NavigationPage, TabbedPage, DrawerPage, CarouselPage and CommandBar (with AppBarButton, AppBarToggleButton, AppBarSeparator)
  • Each doc covers: properties table, enum value tables, events, gestures/keyboard behaviour, and examples in both XAML and C#
  • Screenshots added for all five controls under static/img/reference/controls/

@jsuarezruiz jsuarezruiz changed the title dd reference docs for ContentPage, NavigationPage, TabbedPage, DrawerPage, and CommandBar Add docs for ContentPage, NavigationPage, TabbedPage, DrawerPage, and CommandBar Mar 6, 2026
Copy link
Copy Markdown
Contributor

@luke-whos-here luke-whos-here left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some comments and suggestions on the relevant files. I also have two overall remarks for the PR as a whole:

  1. With the release of the v12 docs, the .md files are now under the /controls/navigation path, and the images are now under the /static/img/controls path. I would recommend moving these to the new file structure before merging.
  2. Some of these pages feel like they would benefit from cross-linking where other controls are mentioned, e.g., TabbedPage has an extensive example covering interaction with NavigationPage. Kind of discretionary, so feel free to add some or not as you think appropriate.


When `IsKeyboardNavigationEnabled` is `true`:

- Horizontal tabs (Top, Bottom): left and right arrow keys switch tabs. RTL layouts reverse the direction.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Horizontal tabs (Top, Bottom): left and right arrow keys switch tabs. RTL layouts reverse the direction.
- Horizontal tabs: left and right arrow keys switch tabs. RTL layouts reverse the direction.

</ContentPage>
```

A disabled tab is skipped during keyboard and swipe navigation. If it is currently selected when disabled, selection moves to the nearest enabled tab automatically.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if it really needs a detailed explanation, but this does make me wonder how preference is decided if there are two tabs that are both the nearest. (e.g., one on the left and one on the right)

}
```

Each `NavigationPage` maintains its own back stack independently. Switching tabs does not reset the stack.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Each `NavigationPage` maintains its own back stack independently. Switching tabs does not reset the stack.
Each `NavigationPage` maintains its own stack independently. Switching tabs does not reset the stack.

Copy link
Copy Markdown
Contributor

@luke-whos-here luke-whos-here left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some comments and suggestions on the relevant files. I also have two overall remarks for the PR as a whole:

  1. With the release of the v12 docs, the .md files are now under the /controls/navigation path, and the images are now under the /static/img/controls path. I would recommend moving these to the new file structure before merging.
  2. Some of these pages feel like they would benefit from cross-linking where other controls are mentioned, e.g., TabbedPage has an extensive example covering interaction with NavigationPage. Kind of discretionary, so feel free to add some or not as you think appropriate.

@jsuarezruiz
Copy link
Copy Markdown
Member Author

jsuarezruiz commented Mar 25, 2026

Thanks for the thorough review! All inline suggestions have been applied. Regarding the two overall remarks:

  1. File paths: Moved files to /controls/navigation and images to /static/img/controls.
  2. Cross-linking: Added cross-references where controls are mentioned in examples (e.g., TabbedPage referencing NavigationPage, DrawerPage referencing NavigationPage integration).

@jsuarezruiz jsuarezruiz marked this pull request as ready for review March 25, 2026 11:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants