FieldUpdateCultureProvider
内容
[
隐藏
]FieldOptions.FieldUpdateCultureProvider property
获取或设置返回特定于每个特定字段的区域性对象的提供程序。
public IFieldUpdateCultureProvider FieldUpdateCultureProvider { get; set; }
评论
当以下值时向提供者发出请求FieldUpdateCultureSource
是FieldCode。
如果提供程序存在,则它返回的区域性对象将用于字段更新。否则,将使用系统文化。
例子
演示如何指定解析每个字段的日期/时间格式的区域性。
public void DefineDateTimeFormatting()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.InsertField(FieldType.FieldTime, true);
doc.FieldOptions.FieldUpdateCultureSource = FieldUpdateCultureSource.FieldCode;
// 设置一个返回特定于每个字段的区域性对象的提供程序。
doc.FieldOptions.FieldUpdateCultureProvider = new FieldUpdateCultureProvider();
FieldTime fieldDate = (FieldTime)doc.Range.Fields[0];
if (fieldDate.LocaleId != (int)EditingLanguage.Russian)
fieldDate.LocaleId = (int)EditingLanguage.Russian;
doc.Save(ArtifactsDir + "FieldOptions.UpdateDateTimeFormatting.pdf");
}
/// <summary>
/// 提供在字段更新期间应使用的 CultureInfo 对象。
/// </summary>
private class FieldUpdateCultureProvider : IFieldUpdateCultureProvider
{
/// <summary>
/// 返回要在字段更新期间使用的 CultureInfo 对象。
/// </summary>
public CultureInfo GetCulture(string name, Field field)
{
switch (name)
{
case "ru-RU":
CultureInfo culture = new CultureInfo(name, false);
DateTimeFormatInfo format = culture.DateTimeFormat;
format.MonthNames = new[] { "месяц 1", "месяц 2", "месяц 3", "месяц 4", "месяц 5", "месяц 6", "месяц 7", "месяц 8", "месяц 9", "месяц 10", "месяц 11", "месяц 12", "" };
format.MonthGenitiveNames = format.MonthNames;
format.AbbreviatedMonthNames = new[] { "мес 1", "мес 2", "мес 3", "мес 4", "мес 5", "мес 6", "мес 7", "мес 8", "мес 9", "мес 10", "мес 11", "мес 12", "" };
format.AbbreviatedMonthGenitiveNames = format.AbbreviatedMonthNames;
format.DayNames = new[] { "день недели 7", "день недели 1", "день недели 2", "день недели 3", "день недели 4", "день недели 5", "день недели 6" };
format.AbbreviatedDayNames = new[] { "день 7", "день 1", "день 2", "день 3", "день 4", "день 5", "день 6" };
format.ShortestDayNames = new[] { "д7", "д1", "д2", "д3", "д4", "д5", "д6" };
format.AMDesignator = "До полудня";
format.PMDesignator = "После полудня";
const string pattern = "yyyy MM (MMMM) dd (dddd) hh:mm:ss tt";
format.LongDatePattern = pattern;
format.LongTimePattern = pattern;
format.ShortDatePattern = pattern;
format.ShortTimePattern = pattern;
return culture;
case "en-US":
return new CultureInfo(name, false);
default:
return null;
}
}
}
也可以看看
- interface IFieldUpdateCultureProvider
- class FieldOptions
- 命名空间 Aspose.Words.Fields
- 部件 Aspose.Words