Table of Contents

Class OptionItemAttribute

Namespace
Dynamicweb.Content.Items.Annotations
Assembly
Dynamicweb.dll

Provides information about the ItemType based field option.

[AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = false)]
public class OptionItemAttribute : Attribute
Inheritance
OptionItemAttribute
Inherited Members

Examples

using System;
using System.Collections.Generic;
using Dynamicweb.Content.Items;
using Dynamicweb.Content.Items.Activation;
using Dynamicweb.Content.Items.Annotations;
using Dynamicweb.Content.Items.Editors;
using Dynamicweb.Content.Items.Metadata;
using Dynamicweb.Core.UI.Icons;

namespace Dynamicweb.Examples.Items;

[Item("Item with all field types", "The example of code-first item")]
[AreaRule,
 ModuleAttachmentRule(true),
 StructureRule(StructureContextType.Pages, StructureContextType.Paragraphs),
 ParentRule(ParentRestrictionRule.ParentType.RootOfWebsite, ParentRestrictionRule.ParentType.RegularPage),
 ChildRule(true), ChildRule("ExampleCategory", "ExampleRegion")]
[Category("Example"),
 PageDefaultView(PageDefaultView.Paragraph),
 Icon(KnownIcon.Archive)]
public class ExampleAllFieldTypesItem : ItemEntry
{
    [Group("StandardFields")]
    [Checkbox]
    public bool FieldCheckbox { get; set; }

    [Group("StandardFields")]
    [Color("Color", Presets = "#FFF, #151515, #444544, #5E5E5E, #005731, #287D59, #31988D, #2D73AB, #384E9A, #703F96, #9F3F95, #A93948, #E6A04B, #DD823A, #9BBF53, #0085CA, #1C588F")]
    [DefaultValue("#151515")]
    public string FieldColor { get; set; } = "";

    [Group("StandardFields")]
    [DefaultValue("Now")]
    public DateTime FieldDate { get; set; }

    [Group("StandardFields")]
    [DefaultValue("Now")]
    [DateTime]
    public DateTime FieldDateTime { get; set; }

    [Group("StandardFields")]
    [Decimal]
    public decimal FieldDecimal { get; set; }

    [Group("StandardFields")]
    [File("File", "/Images/Products", "gif,jpg,png", AllowFrontendUpload = true, ShowAsImageSelector = true, UseFocalSelector = true)]
    public string FieldFile { get; set; } = "";

    [Group("StandardFields")]
    [Folder("Folder", "*.png")]
    public string FieldFolder { get; set; } = "";

    [Group("StandardFields")]
    [Geolocation("Geolocation", AddressFields = "Street,Number,City,Zip")]
    public string FieldGeolocation { get; set; } = "";

    [Group("StandardFields")]
    [GoogleFont("Google font", "Lato", "italic")]
    public string FieldGoogleFont { get; set; } = "";

    [Group("StandardFields")]
    [ColorSwatch("Font color")]
    public string FieldFontColor { get; set; } = "";

    [Group("StandardFields")]
    [HiddenField]
    public string FieldHidden { get; set; } = "";

    [Group("StandardFields")]
    [InputHtml5("Html5", InputType = "Number", Min = 0, Max = 10)]
    public int FieldHtml5 { get; set; }

    [Group("StandardFields")]
    [Integer]
    public int FieldInteger { get; set; }

    [Group("StandardFields")]
    [Link]
    public string FieldLink { get; set; } = "";

    [Group("StandardFields")]
    [LinkToItem]
    public string FieldLinkToItem { get; set; } = "";

    [Group("StandardFields")]
    [ItemTypeEditor("Item", "ExampleCustomer")]
    public string FieldItem { get; set; } = "";

    [Group("StandardFields")]
    [Password]
    public string FieldPassword { get; set; } = "";

    [Group("StandardFields")]
    public string FieldText { get; set; } = "";

    [Group("StandardFields")]
    [LongText]
    public string FieldLongText { get; set; } = "";

    [Group("StandardFields")]
    [RichText]
    public string FieldRichText { get; set; } = "";

    [Group("StandardFields")]
    [ItemRelationList("Relation list", "ExampleNewsItem", ItemRelationListEditor.ItemListSource.Page, "Title", "SubTitle")]
    [Option("Title"), Option("Subtitle"), Option("NewsType")]
    public int FieldRelationList { get; set; }

    [Group("ListFields", LayoutGroupMetadata.GroupCollapsibleState.Collapsed)]
    [DropdownList(RemoveNothingSelected = true)]
    [OptionItem("ExampleCategory", "Name", "Id", SourceType = FieldOptionItemSourceType.CurrentArea)]
    public string FieldDropdownList { get; set; } = "";

    [Group("ListFields")]
    [CheckboxList(AllowOptionsSorting = true)]
    [OptionSql("SELECT TOP 10 ProductId, ProductName FROM EcomProducts WHERE ProductPrice > 100", "ProductName", "ProductId")]
    public IEnumerable<string> FieldCheckboxList { get; set; } = [];

    [Group("ListFields")]
    [RadiobuttonList]
    [Option("News"), Option("Featured"), Option("Add")]
    [DefaultValue("News")]
    public string FieldRadiobuttonList { get; set; } = "";

    [Group("ListFields")]
    [RadiobuttonList(IconPosition = 1, IconMaxWidth = 140, IconMaxHeight = 100)]
    [OptionFolder("/Images")]
    public string FieldRadioFolderList { get; set; } = "";

    [Group("ListFields")]
    [EditableList]
    public string FieldEditableList { get; set; } = "";

    [Group("SpecialFields")]
    [SingleUser(Name = "User")]
    public string FieldUser { get; set; } = "";

    [Group("SpecialFields")]
    [SingleUserGroup(Name = "Group")]
    public string FieldGroup { get; set; } = "";

    [Group("SpecialFields")]
    [UserGroups(Name = "Groups")]
    public string FieldGroups { get; set; } = "";
}

Constructors

OptionItemAttribute(string, string, string)

Initializes a new instance of an object.

public OptionItemAttribute(string itemSystemName, string nameField, string valueField)

Parameters

itemSystemName string

System name of target ItemType.

nameField string

ItemType field system name for option name.

valueField string

ItemType field system name for option value.

Properties

IncludeChildItems

Gets or sets IncludeChildItems flag.

public bool IncludeChildItems { get; set; }

Property Value

bool

IncludeParagraphItems

Gets or sets IncludeParagraphsItems flag.

public bool IncludeParagraphItems { get; set; }

Property Value

bool

ItemSystemName

Gets or sets the name of ItemType to use.

public string ItemSystemName { get; set; }

Property Value

string

NameField

Gets or sets options names.

public string NameField { get; set; }

Property Value

string

SourceId

Gets or sets area Id to search ItemType instances in.

public int SourceId { get; set; }

Property Value

int

SourceType

Gets or sets area name to search ItemType instances in.

public FieldOptionItemSourceType SourceType { get; set; }

Property Value

FieldOptionItemSourceType

ValueField

Gets or sets options values.

public string ValueField { get; set; }

Property Value

string
To top