我们需要为我们正在处理的项目创建自定义属性。我们正在创建一个将显示图表的共享块。
编辑器可以设置图表的标题和类型(图表,甜甜圈等),这些都是普通的字符串属性。接下来编辑器需要为图表的每个部分创建数据,例如编辑器要创建三列holidng基本柱形图的数据。
柱形图的每个部分都包含三个值,我们在一个名为 GraphPartint 值的类中管理这些属性;字符串颜色;字符串描述;我们要创建的是一个自定义属性,用户可以轻松地为框图创建任意数量的自定义属性。与 LinkItemCollection 属性类似的东西起作用。最佳实践是什么,我们应该如何实现它?
欢迎所有建议和提示/指南。下面的代码示例
[ContentType(
DisplayName = "Graf",
Description = "Block med graf",
AvailableInEditMode = true)]
[ImageUrl("~/Content/icons/block-type-graf-stapel.jpg")]
public class GraphBlock : BlockData
{
[Display(
Name = "Diagramtyp",
Description = "Välj vilken diagramtyp som ",
GroupName = SystemTabNames.Content,
Order = 0)]
[UIHint(SiteUIHints.GraphTypes)]
public virtual string Typ { get; set; }
[Display(
Name = "Title",
Description = "Beskrivande titel kan anges",
GroupName = SystemTabNames.Content,
Order = 1)]
public virtual string MainTitle { get; set; }
[Display(
Name = "Diagrambitar",
Description = "För varje bit av diagram måste en diagrambit med tre värden anges.",
GroupName = SystemTabNames.Content,
Order = 2)]
public virtual IEnumerable<GraphParts> GraphParts { get; set; }
}
public class GraphPart
{
public int Value { get; set; }
public string Title { get; set; }
public string Color { get; set; }
}