combit List & Label 25 - .NET Online Web Help
WebDesignerExtension Class

combit.ListLabel25.Web.WebDesigner Namespace : WebDesignerExtension Class
Definition of the extension assembly. An extension assembly contains classes which inherit from DesignerObject or DesignerFunction.
Object Model
WebDesignerExtension Class
Public Class WebDesignerExtension 
public class WebDesignerExtension 
public ref class WebDesignerExtension 

The List & Label Web Designer on the client will automatically try to download the assembly into the windows temp folder and loads it as a new extension. Anytime that a new version of the assembly is available on the server, by restarting any client it will find out about the change and download the new assembly automatically again. If the assembly remains unchanged on the server and has been downloaded before, almost no network traffic will be used up as just the checksum of the file is transferred.



The sample assumes a new folder called "extensions" in the root folder of the web application that contains the assembly [YourExtensionAssemblyName].dll and its dependencies [YourFirstExtensionAssemblyDependencyName].dll and [YourFirstExtensionAssemblyDependencyName].dll to load a DesignerObject which contains an accessible constructor with two parameters and one property:

// path to load the extension assembly and its dependencies from
string dllPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "extensions");
options.ExtensionAssemblies.Add(new WebDesignerExtension()
    AssemblyName = "[YourExtensionAssemblyName].dll",
    ExtensionDirectory = dllPath,
    Dependencies = new List<string> { "[YourFirstExtensionAssemblyDependencyName1].dll", "[YourSecondExtensionAssemblyDependencyName2].dll", /*[...]*/ },
    ExtensionClasses = new List<WebDesignerExtensionClass>()
        new WebDesignerExtensionClass()
            ClassName = "YourExtensionClassName", // this class should be derived from List & Label DesignerObject class
            ExtensionType = WebDesignerExtensionType.DesignerObject,
            ConstructorParameters = new List<WebDesignerExtensionClassInputsInfo>()
                new WebDesignerExtensionClassInputsInfo(typeof(string), "[ParameterValue|EmptyForListLabel|FileName]", WebDesignerExtensionClassInputValueFormat.Plain/*|JsonSerializableObject|File|ListLable*/),
                new WebDesignerExtensionClassInputsInfo(typeof(ListLabel), "[ParameterValue|EmptyForListLabel|FileName]", WebDesignerExtensionClassInputValueFormat.Plain/*|JsonSerializableObject|File|ListLable*/),
            Properties = new List<WebDesignerExtensionClassInputsInfo>()
                new WebDesignerExtensionClassInputsInfo("[PropertyName]", typeof(object), "[ParameterValue|EmptyForListLabel|FileName]", WebDesignerExtensionClassInputValueFormat.Plain/*|JsonSerializableObject|File|ListLable*/)
Inheritance Hierarchy



Platforms: Windows 7 SP1 to Windows 10 Version 1709 - 1909, Windows Server 2008 R2 to 2019

See Also


WebDesignerExtension Members
combit.ListLabel25.Web.WebDesigner Namespace