Class DashboardWidget
- Namespace
- Dynamicweb.Dashboard.Widgets
- Assembly
- Dynamicweb.Core.dll
The class DashboardWidget provides base dashboard widget
[AddInUseParameterOrdering(true)]
public abstract class DashboardWidget : ConfigurableAddIn, IParameterOptions
- Inheritance
-
Dashboard
Widget
- Implements
- Derived
- Inherited Members
Examples
using Dynamicweb.Dashboard.Widgets;
using Dynamicweb.Extensibility.AddIns;
using Dynamicweb.Extensibility.Editors;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Dynamicweb.Dashboard.Examples;
[AddInName("Date time widget")]
[AddInDescription("Show current date and time")]
[AddInIcon(Core.UI.Icons.KnownIcon.LocalHotel)]
public sealed class SimpleDateTimeWidget : DashboardWidget
{
public SimpleDateTimeWidget()
{
Columns = 2;
Title = "Current date and time";
}
[AddInLabel("Date time format"), AddInParameter("Format"), AddInParameterEditor(typeof(DropDownParameterEditor), "container=body;AllowSearch=true")]
public string Format { get; set; } = "";
public override IEnumerable<ParameterOption> GetParameterOptions(string dropdownName)
{
return dropdownName switch
{
"Format" => GetOptions(),
_ => Enumerable.Empty<ParameterOption>()
};
ParameterOption[] GetOptions() => new ParameterOption[]
{
new("Short date time format", "Short"),
new("Long date time format", "Long")
};
}
public Dictionary<string, string> GetData()
{
DateTime dateTime = DateTime.Now;
bool isShortFormat = Format.Equals("Short", StringComparison.OrdinalIgnoreCase);
string currentDate = isShortFormat ? dateTime.ToShortDateString() : dateTime.ToLongDateString();
string currentTime = isShortFormat ? dateTime.ToShortTimeString() : dateTime.ToLongTimeString();
return new()
{
{ "Date", currentDate },
{ "Time", currentTime }
};
}
}
Properties
Columns
Gets or sets widget size
[AddInLabel("Columns")]
[AddInParameter("CustomColumns")]
[AddInParameterOrder(0)]
[AddInParameterEditor(typeof(IntegerNumberParameterEditor), "")]
public virtual int Columns { get; set; }
Property Value
Remarks
The size set on widget via class name "col-md-" + Size
CreatedDate
Gets the created date and time.
Property Value
Id
Gets widget Id
Property Value
ModifiedDate
Gets the last modified date and time.
Property Value
Order
Gets or sets widget order
Property Value
ShowTitle
Gets or sets value indicating whether to show widget title.
Property Value
Title
Gets or sets widget title
[AddInLabel("Title")]
[AddInParameter("WidgetTitleEditor")]
[AddInParameterOrder(0)]
[AddInParameterEditor(typeof(TextParameterEditor), "")]
public virtual string Title { get; set; }
Property Value
Methods
GetParameterOptions(string)
Gets parameteroptions
Parameters
parameterName
string