Built-in controls

DotVVM ships with about 25 built-in controls that cover most frequent scenarios. Some of them are just wrappers for standard HTML elements (inputs and various form elements), some offer complex functionalities (rendering tables with data).

The built-in controls are universal and do not include any styles or themes. They render simple HTML that can be easily styled by CSS.

If you plan to build a larger application, check out our commercial components - they offer advanced functions as well as customizable themes:

Form controls

  • Button - button or input[type=button] that triggers a postback
  • ComboBox - standard HTML select with advanced binding options
  • CheckBox - standard HTML input[type=checkbox]
  • FileUpload - renders a stylable file upload control with progress indication
  • HtmlLiteral - renders a HTML content in the page
  • Label - renders a label element for a specified form control, ensuring a unique control ID
  • LinkButton - a hyperlink that triggers the postback
  • ListBox - standard HTML select list that allows selecting a single value
  • Literal - renders a text in the page, supports date and number formatting
  • ModalDialog - allows to display a modal dialog using the <dialog> HTML element
  • MultiSelect - standard HTML select list that allows selecting multiple values
  • RadioButton - standard HTML input[type=radio]
  • RouteLink - renders a hyperlink that navigates to a specified route with specified parameters
  • TextBox - HTML input or textarea

Validation

Collections and data

  • DataPager - displays a list of pages in the grid
  • HierarchyRepeater - repeats a template for each item in the collection, with support for recursive child items
  • GridView - displays a table grid with sort and inline edit functionality
  • Repeater - repeats a template for each item in the collection
  • EmptyData - displays a content when a collection is empty

Master pages

  • Content - defines a content that is hosted in ContentPlaceHolder
  • ContentPlaceHolder - defines a place where the content page is hosted
  • SpaContentPlaceHolder - a ContentPlaceHolder which works as a Single Page Application container

Conditional views

  • AuthenticatedView - displays some content to the authenticated users only
  • ClaimView - displays some content if the current user has a particular claim
  • EnvironmentView - displays some content in a particular environment (e.g. Debug, Production)
  • RoleView - displays some content if the current user is in a particular role

Other controls

DotVVM Contrib

There is also a DotVVM Contrib repository which features various community-authored components. Anyone can contribute to the repository and submit their own controls.

See also