Widget designers

Overview

Sitefinity CMS provides enhanced user experience for working with custom ASP.NET Core and ASP.NET MVC widgets. By default, Sitefinity CMS detects the types of the public properties that you define in the code of the widget and automatically generates the widget editor with the respective fields.

The widget editors support the following:

  • Editing the properties through more user-friendly, type-specific field editors
  • Grouping properties in section and views
  • Validating the user input
  • Conditionally displaying fields, depending on custom requirements

In Sitefinity CMS, the autogenerated widget designers for the ASP.NET Core and .NET MVC widgets are based on a common framework, which is extracted into the Progress.Sitefinity.Renderer assembly . This assembly holds all the common types and attributes to help you customize autogenerated widget designers for both frameworks.

Process

Following is a general process of widget creation:

  1. You first decide which fields you want to include in the widget.
  2. Then, you can customize the fields, using the desired attributes.
  3. You can impose field validations, if required.
  4. You distribute the fields into sections or views.
  5. You can make some fields to be displayed conditionally.
  6. Finally, Sitefinity generates the fields in your widget designer.

Increase your Sitefinity skills by signing up for our free trainings. Get Sitefinity-certified at Progress Education Community to boost your credentials.

Web Security for Sitefinity Administrators

The free standalone Web Security lesson teaches administrators how to protect your websites and Sitefinity instance from external threats. Learn to configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.

Foundations of Sitefinity ASP.NET Core Development

The free on-demand video course teaches developers how to use Sitefinity .NET Core and leverage its decoupled architecture and new way of coding against the platform.

Was this article helpful?

Next article

Access context data