实现IArributeRenderer接口就可以达到目的下面是来自StackOverFlow的例子。
Use additional renderers like this实现接口的类:
internal class AdvancedDateTimeRenderer : IAttributeRenderer
{
public string ToString(object o)
{
return ToString(o, null);
}
public string ToString(object o, string formatName)
{
if (o == null)
return null;
if (string.IsNullOrEmpty(formatName))
return o.ToString();
DateTime dt = Convert.ToDateTime(o);
return string.Format("{0:" + formatName + "}", dt);
}
}
and then add this to your StringTemplate such as把类注册到模板组中:
var stg = new StringTemplateGroup("Templates", path);
stg.RegisterAttributeRenderer(typeof(DateTime), new AdvancedDateTimeRenderer());
then in st file模板文件中的写法:
$YourDateVariable; format="dd/mm/yyyy"$
本文首发:剑锋博客 尊重作者,请保留链接。