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.
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.
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.
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:
Back To Top