ARTICLE

How to create custom properties for visual webpart in SharePoint 2010.

Posted by Vijai Anand Articles | SharePoint 2010 March 03, 2011
In this article we will be seeing how to create custom properties for visual webpart in SharePoint 2010.
Reader Level:

In this article we will be seeing how to create custom properties for visual webpart in SharePoint 2010.

Steps Involved:

  • Open Visual Studio 2010.
  • Create an "Empty SharePoint Project".
  • Right click on the solution and click on Add => New Item.
  • Select "Visual Web Part" template from SharePoint 2010 installed templates.
  • Entire solution looks like the following

    share1.gif
     
  • Replace CustomPropertiesVisualWP.cs file with the following code.

    using System;
    using System.ComponentModel;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using Microsoft.SharePoint;
    using Microsoft.SharePoint.WebControls;

    namespace CustomProperties.CustomPropertiesVisualWP
    {
        [ToolboxItemAttribute(false)]
        public class CustomPropertiesVisualWP :WebPart
        {
            public static string _value;
            [System.Web.UI.WebControls.WebParts.WebBrowsable(true),
             System.Web.UI.WebControls.WebParts.WebDisplayName("Enter the Value"),
             System.Web.UI.WebControls.WebParts.WebDescription(""),
             System.Web.UI.WebControls.WebParts.Personalizable(
             System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared),
             System.ComponentModel.Category("anavijai Custom Properties"),|
             System.ComponentModel.DefaultValue("")]

            public string _Value
            {
                get { return _value; }
                set { _value =value; }
            }

            // Visual Studio might automatically update this path when you change the Visual Web Part project item.
            private const string _ascxPath = @"~/_CONTROLTEMPLATES/CustomProperties/CustomPropertiesVisualWP/CustomPropertiesVisualWPUserControl.ascx";

            protected override void CreateChildControls()
            {
                Control control = Page.LoadControl(_ascxPath);
                Controls.Add(control);
            }
        }
    }

  • In CustomPropertiesVisualWPUserControl.ascx I have added one label "lblResult" and button "btnClick".
  • Replace CustomPropertiesVisualWPUserControl.ascx.cs with the following code.

    using System;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.ComponentModel;

    namespace CustomProperties.CustomPropertiesVisualWP
    {
        public partial class CustomPropertiesVisualWPUserControl : UserControl
        {

            protected void Page_Load(object sender,EventArgs e)
            {
            }

            protected void btnClick_Click(object sender,EventArgs e)
            {
                lblResult.Text = CustomPropertiesVisualWP._value;
            }
        }
    }

     

  • Build and deploy the solution.
     
  • Go to the SharePoint Site =>Site Actions =>Edit Page =>Editing Tools => Insert =>Web Part =>Categories => Custom =>Select CustomPropertiesVisualWP.
     
  • Click on Add.
     
  • The web part looks like the following with a button.

    share2.gif
     
  • Edit the webpart you could see a new custom category in the webpart properties.

    share3.gif

     
  • Enter the value and click on Ok.

    share4.gif
     
  • In the CustomPropertiesWP click on the button.

    share5.gif

 

COMMENT USING

Trending up