SSRS ReportViewer中的日期时间格式总是使用en-US?

Ada*_*son 6 localization reporting-services winforms

我对ReportViewer组件有一个停止显示的问题,它是SSRS的一部分.我正在开发一个WinForms应用程序,并有几个本地报告显示DateTime来自不同位置的数据库的值.不管格式是怎么做的(任何排版,在使用"d" Format的财产,或使用FormatDateTime与任何的DateFormat枚举值),它总是出现在日期时间与EN-US区域性格式,而不是系统日期和数字格式化文化.

我已经验证了这CurrentCulture是预期的.报告语言设置为"默认".该Language标记甚至不存在于.rdlc文件中.如果我更改报告语言,则无论系统文化如何,它都会反映该文化的格式.

有没有办法使用当前系统文化呈现报表,或者根据文化以编程方式修改报表的语言?

Ada*_*son 6

事实证明,作为语言设置的"默认"并没有太大作用.为了获取用户当前的文化,必须将语言指定为表达式"= User.Language"(这也需要在所有子报表上设置,因为值不会传播或继承).

感谢Chris May在他关于这个主题的博客文章中.