Create a new custom widget in Visual Studio

Overview

To create a custom widget and implement its logic, you must first create an empty custom widget in Visual Studio. Custom widgets are independent from the project, which they are being used in. They consist of a single .dll file, which can be reused across different applications. The new widget holds the logic and functionality of the custom widget.

Create the class

If your Visual Studio version is Visual Studio 2013 or newer, perform the following:

  1. In Visual Studio, open the context menu of your Sitefinity CMS solution and click Add » New Project...
  2. Click Class Library (.Net Framework) » Next.
  3. Enter the project name and choose its location.
  4. Make sure that the Framework field has the same .NET Framework version as your Sitefinity CMS project.
  5. Click Create.
  6. Add a reference to Telerik.Sitefinity.dll.

Modify the code

After you have prepared your source code, you can modify the auto-generated code beside the class definition. Perform the following:

  1. Add using Telerik.Sitefinity.Web.UI;.
  2. Inherit SimpleView or SimpleScriptView in your class.
  3. Override the InitializeControls abstract method and the LayoutTemplatePath property.

Visual Studio 2012 or older

If your Visual Studio version is Visual Studio 2012 or older, to create the class, perform the following:

  1. In the context menu of your Sitefinity CMS solution, click Add » New project...
  2. In the dialog that appears, select Visual C# » Web » ASP.NET Server Control.
  3. Name the project and click OK.
    A new project is generated under the solution. It contains only a single .cs file named ServerControl1.

    NOTE: If you rename the .cs file, you also must rename the class name inside the file.

  4. Modify the code of the auto-generated class, using procedure Modify the code above.

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?