[]
        
(Showing Draft Content)

支持批量选中命令参数

对于 ListProperty 和 FlatListProperty参数来说,为了提升参数选择的易用性,可以使用批量选中的功能。本章将向您介绍如何在插件中实现此功能。

如下例是一个同时拥有 ListProperty 与 FlatListProperty属性的命令:

[Icon("pack://application:,,,/Test;component/Resources/Icon.png")]
[Designer("Test.Designer.TestCommandDesigner, Test")]
public class TestCommand : Command
{
    [ListProperty]
    public List<DataObject> DataObject1 { get; set; } = new List<DataObject>();

    [FlatListProperty]
    public List<DataObject> DataObject2 { get; set; } = new List<DataObject>();
}

public class DataObject : ObjectPropertyBase
{
    [IntelligentName]
    public string Name { get; set; }

    [FormulaProperty]
    [IntelligentFormula]
    public object Value { get; set; }
}

您可以在模型类型 DataObject定义时,标记 IntelligentNameAttribute 与 IntelligentFormulaAttribute 特性,当标记之后,您就可以得到如下的批量选择的功能:

09

需要注意以下两点:

1. IntelligentNameAttribute 与 IntelligentFormulaAttribute特性必须成对出现,一个用来标记快速选择资源的Name,一个标记Value

2. 此特性为 10.0.100.0 版本新增的特性。