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


combit.ListLabel24.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
Syntax
'Declaration
 
Public Class WebDesignerExtension 
public class WebDesignerExtension 
public ref class WebDesignerExtension 
Remarks

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.

 

Example

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

System.Object
   combit.ListLabel24.Web.WebDesigner.WebDesignerExtension

Requirements

Platforms: Windows Vista - Windows 10 Version 1809, Windows Server 2008 - 2016

See Also

Reference

WebDesignerExtension Members
combit.ListLabel24.Web.WebDesigner Namespace