2011-06-21 32 views
6
[Formas VS2010/ASP.NET Web]

Informe (RDLC) Localización/globalización

Hola,

En un informe (RDLC) necesito proporcionar la localización/globalización en dos idiomas (pt-BR y en-US) a los siguientes elementos: - Etiquetas/Subtítulos (texto fijo) - Interfaz de interfaz de usuario del Visor de informes (botones y información sobre herramientas para controles como buscar, siguiente, anterior, etc.). - formateo de campos, según la cultura actual

¿Cuál es la mejor manera de lograr esto?

  • para traducir los subtítulos fijos/etiquetas he encontró algunas soluciones que hacen que una traducción manual de RDLC's definición XML, utilizando el LabelLocID de un cuadro de texto informe como un auxiliar. ¡Pero parece muy feo y penoso!

  • Para traducir la interfaz de usuario, he encontrado soluciones que sugieren el uso de un IReportingViewerMessage personalizado MSDN. ¿Hay alguna otra solución para hacer esto automáticamente?

  • Para formatear los campos de datos, puedo configurar el atributo de idioma del informe y el cuadro de texto (en un RDLC), pero debo configurar esto de acuerdo con la cultura actual. ¿Cómo podría hacer esto?

Gracias!

Respuesta

9

He tenido éxito con la localización de informes mediante la alimentación en la cultura que me gustaría mostrar como un parámetro para el informe. Este es el esquema básico:

  1. instalación de un parámetro de informe que representa el código de la cultura que desea visualizar. Vamos a llamarlo pReportCulture. Me puse un valor estático como valor predeterminado para "en-US"

  2. Establecer el idioma de su informe al valor de la Parm: language = Parámetros pReportCulture.Value!. Esto debería configurar la cultura de todos los cuadros de texto, etc. en el informe.

  3. Asegúrese de poner una fecha o un formato de moneda en los campos que localiza. Utilice .toString ("c") u otros formatos válidos. Si realiza un análisis de texto personalizado, perderá la localización automática desde la configuración cultural.

Esto debería ocupar la mayor parte de la pantalla de localización.

+0

Jellie, gracias por la respuesta. Creo que esta solución solo maneja el formateo del campo de datos, ¿no? ¿Qué tal la globalización de textos fijos de etiquetas/subtítulos? – outlookrperson

+0

@rperson, ¿estás hablando de la traducción multilingüe de textos basados ​​en la cultura? Si es así y solo tiene que lidiar con los 2, podría hacer una tabla con todas las cadenas y cargar un conjunto de datos basado en el parámetro de cultura. Entonces necesitaría usar una expresión para mostrar cada una del conjunto de datos. –

+0

Podría resolver el problema del formato de campos usando parámetros, así como el título de los campos, como ha sugerido. La localización de UI la resolví usando un IReportViewerMessages y Resources (resx). ¡Gracias! – outlookrperson

Cuestiones relacionadas