[]
默认情况下,如果一个属性的类型是 string 那么这个属性会被自动识别为字符串属性,不需要做任何额外的事情。
public class MyPluginServerCommand : Command, ICommandExecutableInServerSideAsync
{
public string MyProperty { get; set; }
public async Task<ExecuteResult> ExecuteAsync(IServerCommandExecuteContext dataContext)
{
return new ExecuteResult();
}
public override CommandScope GetCommandScope()
{
return CommandScope.ExecutableInServer;
}
}
在设计器中效果如下:
如果需要更细致的控制,需要使用 TextPropertyAttribute 标注来控制。
注意:标注TextPropertyAttribute的属性类型必须是 string。
1.添加水印。
设置TextPropertyAttribute 的 Watermark 属性。
代码如下:
public class MyPluginServerCommand : Command, ICommandExecutableInServerSideAsync
{
[TextProperty(Watermark = "请输入名称...")]
public string MyProperty { get; set; }
public async Task<ExecuteResult> ExecuteAsync(IServerCommandExecuteContext dataContext)
{
return new ExecuteResult();
}
public override CommandScope GetCommandScope()
{
return CommandScope.ExecutableInServer;
}
}
效果如下:
本特性要求活字格版本大于等于10.0.0.0。
2.支持输入多行文本。
设置TextPropertyAttribute 的 AcceptsReturn属性。
代码如下:
public class MyPluginServerCommand : Command, ICommandExecutableInServerSideAsync
{
[TextProperty(AcceptsReturn = true)]
public string MyProperty { get; set; }
public async Task<ExecuteResult> ExecuteAsync(IServerCommandExecuteContext dataContext)
{
return new ExecuteResult();
}
public override CommandScope GetCommandScope()
{
return CommandScope.ExecutableInServer;
}
}
效果如下:
本特性要求活字格版本大于等于10.0.0.0。
3.支持多语言功能。
设置TextPropertyAttribute 的 CanSelectResource 属性。
代码如下:
public class MyPluginServerCommand : Command, ICommandExecutableInServerSideAsync
{
[TextProperty(CanSelectResource = true)]
public string MyProperty { get; set; }
public async Task<ExecuteResult> ExecuteAsync(IServerCommandExecuteContext dataContext)
{
// 通过代码 this.GetApplicationResource(MyProperty) 可以获取当前语言对应的值
var strValue = GetApplicationResource(MyProperty);
return new ExecuteResult()
{
Message = strValue,
};
}
public override CommandScope GetCommandScope()
{
return CommandScope.ExecutableInServer;
}
}
type=warning
this.GetApplicationResource(Key) 可以在多语言情况下把key替换为当前语言的字符串,在非多语言环境下,会返回原始的key字符串。
效果如下:
本特性要求活字格版本大于等于10.0.0.0,并开启了多语言功能。