Feather MVC-based widgets come with property editors based on the Bootstrap framework and AngularJS. For the UI of these widgets, Feather provides predefined packages based on different frontend frameworks that provide built-in styling options for your website.
The following procedure demonstrates how to create a new Message widget.
IMPORTANT: When creating your widget files, make sure you abide by the naming conventions. For more information, see Feather: Naming conventions.
NOTE: You can also create the Class Library outside of the SitefinityWebApp project in an external project. For more information, see Feather: Create widgets in external assemblies.
IMPORTANT: The class must have the suffix Controller in its name.
In the code above, you build the model and pass it to the view. That is, you define the actions that correspond the UI, relative to the page, on which you place the widget. Your controller must inherit the System.Web.Mvc.Controller class. You add an Index method that returns an object of type ActionResult. The Index action returns a list of items from the model. You modify the code of the Index action to populate the Message of the Model.
In addition, you decorate the controller with the ControllerToolboxItem attribute, which automatically registers your widget in the Sitefinity toolbox. For more information, see Feather: Register new widgets in Sitefinity CMS toolbox.
NOTE: If you are creating the widget in an external project, in the Properties section of the files, set its Build Action to Embedded Resource. Make sure the Sitefinity version referenced in the external assembly is the same as the one your project is using.
NOTE: The Raw helper method is introduced in MVC 3 and it helps to output any HTML without encoding it. You use the Raw method only when you trust the source of the embedded resource. In case you want to ensure your HTML content is safe, leverage Sitefinity CMS HTML sanitization.
Back To Top