[]
        
(Showing Draft Content)

GrapeCity.Forguncy.Plugin.IBuilderContextBase

接口 IBuilderContextBase

设计器上下文信息。

命名空间: GrapeCity.Forguncy.Plugin
程序集: GrapeCity.Forguncy.Plugin.Design.dll
语法
public interface IBuilderContextBase

属性

AuthenticationMode

获取当前工程的认证模式。

声明
AuthenticationMode AuthenticationMode { get; }
属性值
类型 描述
AuthenticationMode

LocalServerInfo

本地网站应用信息。

声明
ILocalServerInfo LocalServerInfo { get; }
属性值
类型 描述
ILocalServerInfo

Owner

对象所属的单元格或命令

声明
object Owner { get; }
属性值
类型 描述
object

PageName

获取当前所在页面名称。

声明
string PageName { get; }
属性值
类型 描述
string

UserServiceInfo

获取用户管理网站的信息。

声明
IUserServiceInfo UserServiceInfo { get; }
属性值
类型 描述
IUserServiceInfo
示例
public class MyUserSelectorCellTypeDesigner : CellTypeDesigner<MyUserSelectorCellType>
{
    public string Role { get; set; }

    public override EditorSetting GetEditorSetting(PropertyDescriptor property, IBuilderContext builderContext)
    {
        if (property.Name == "Role")
        {
            return new ComboEditorSetting(builderContext.UserServiceInfo.AllRoles);
        }
    }
}

方法

EnumAllListViewInfos(string)

获取某个页面所有的表格信息。

声明
IEnumerable<IListViewInfoDesigner> EnumAllListViewInfos(string pageName)
参数
类型 名称 描述
string pageName

页面名,如果为空即表示当前所在页面。

返回值
类型 描述
System.Collections.Generic.IEnumerable<T><IListViewInfoDesigner>

表格集合

示例
public class WorkflowCommandDesigner : CommandDesigner<WorkflowCommand>
{
    public string ListViewName { get; set; }

    public override EditorSetting GetEditorSetting(PropertyDescriptor property, IBuilderCommandContext builderContext)
    {
        if(property.Name == "ListViewName")
        {
            return new ComboEditorSetting(new List<string> (builderContext.EnumAllListViewInfos(null).Select(i=>i.ListViewName)));
        }
        return base.GetEditorSetting(property, builderContext);
    }
}

EnumAllPageInfos()

获取所有的页面信息。

声明
IEnumerable<IPageInfo> EnumAllPageInfos()
返回值
类型 描述
System.Collections.Generic.IEnumerable<T><IPageInfo>

页面集合。

示例
public class WorkflowCommandDesigner : CommandDesigner<WorkflowCommand>
{
    public string NavigatePageName { get; set; }

    public override EditorSetting GetEditorSetting(PropertyDescriptor property, IBuilderCommandContext builderContext)
    {
        if(property.Name == "NavigatePageName")
        {
            return new ComboEditorSetting(builderContext.EnumAllPageInfos().Select(p => p.PageName));
        }
        return base.GetEditorSetting(property, builderContext);
    }
}

EnumAllTableInfos()

获取所有的数据表信息。

声明
IEnumerable<ITableInfo> EnumAllTableInfos()
返回值
类型 描述
System.Collections.Generic.IEnumerable<T><ITableInfo>

数据表集合

示例
public class WorkflowCommandDesigner : CommandDesigner<WorkflowCommand>
{
    public string TableName { get; set; }

    public override EditorSetting GetEditorSetting(PropertyDescriptor property, IBuilderCommandContext builderContext)
    {
        if(property.Name == "TableName")
        {
            return new ComboEditorSetting(builderContext.EnumAllTableInfos().Where(t => t.WorkflowInfo != null && t.WorkflowInfo.IsEnabled).Select(t => t.TableName));
        }
        return base.GetEditorSetting(property, builderContext);
    }
}

GetBrush(string)

从颜色字符串获取一个WPF的画笔(Brush)。

声明
Brush GetBrush(string colorStr)
参数
类型 名称 描述
string colorStr

颜色字符串

返回值
类型 描述
System.Windows.Media.Brush

WPF的画笔