我正在使用AJAX库中的CalendarExtender,可以进行本地化。目前一切正常,除非我尝试将其本地化为Danich(da-DK)语言。日历看起来是本地化的,除了“今天”仍然是英文的部分。您如何本地化该部分?
PS。如果无法进行本地化,我可以隐藏日历的“今天”部分吗?
答案 0 :(得分:2)
回复:
PS。如果无法进行本地化,我可以隐藏日历的“今天”部分吗?
由于我们认为增加自己的资源更值得工作,我们决定隐藏“今日”位。但是,通过将以下内容添加到我们的css文件中可以轻松完成此操作:
.ajax__calendar_footer {
display: none;
}
答案 1 :(得分:1)
默认情况下,Ajax Control Toolkit没有针对丹麦语进行本地化。您需要稍微定制工具包soulution。下载工具包源并将丹麦语资源文件添加到MicrosoftAjax.Extended项目(ExtenderBase文件夹)中。您可以只创建BaseScriptsResources.resx文件的副本,并将副本文件名更改为“BaseScriptsResources.ds.resx”。我相信您可以轻松找到该文件中必须为您的语言更改的资源值。 之后,将该文件作为链接添加到AjaxControlToolkit项目的ScriptResources文件夹中。构建解决方案时,您将在项目的bin文件夹(da / AjaxControlToolkit.resources.dll)中找到一个带有丹麦资源程序集的新文件夹。只需将带有dll的文件夹复制到项目的bin文件夹即可。
答案 2 :(得分:0)
我们刚刚在使用旧版本 AjaxControlToolkit (4.1) 的遗留项目中遇到了同样的问题,在添加了特定语言的本地化之后。而且我绝对不想想要编译我自己的 AjaxControlToolkit 版本。
因此,在挖掘 CalendarExtender 的 JavaScript 源代码后,我注意到文本是从资源加载的,并且可以修改该资源。长话短说,如果您在 JavaScript 中更新 Sys.Extended.UI.Resources.Calendar_Today
(默认值:Today: {0}
)
然后资源值被你的值替换:
<!-- Add this to the bottom of your page -->
<script type="text/javascript">
Sys.Extended.UI.Resources.Calendar_Today = "Σήμερα: {0}";
</script>
显然,如果您的应用程序是多语言的,您将拥有自己的翻译资源文件:
<script type="text/javascript">
Sys.Extended.UI.Resources.Calendar_Today =
'<%= HttpUtility.JavaScriptStringEncode(Resources.MyTexts.Today) %>';
</script>