Build a page widget: Implement the page widget class

You can use the following procedure as a guideline for building a custom widget.

First, you create a class and inherit from the SimpleView class. There are some abstract methods and properties you have to override.
Then, you can add the public properties that will show up in the dialog. In this tutorial, it is the Message property. Then, you can add control references for the controls added in the template.

InitializeControls method

As with all Sitefinity CMS widgets that inherit from SimpleView, you must override the InitializeControls method. You can think of this as an alternative of the CreateChildControls method in custom ASP.NET controls. You can implement your control’s logic here.

In this case you are getting the value from the Message property and set it to the MessageLabel, if it is not null. Otherwise, set the label text to "Hello, World!".

LayoutTemplateName property

This is not specific to field controls, but all widgets that inherit from SimpleView. Note that this property is obsolete. You can use the LayoutTemplatePath instead. You can return null or String.Empty in your project.

LayoutTemplatePath property

Although it is not abstract, we recommend that you override the LayoutTemplatePath property. Similar to all widgets in Sitefinity CMS, you should return a path to the template used by your widget. You can either use a path to an embedded resource (recommended), or an external file. For more information, see VirtualPathProvider.

Use the following code sample:

Want to learn more?

Sign up for our free beginner training. Boost your credentials through advanced courses and certification.
Register for Sitefinity training and certification.

Was this article helpful?