2011-06-21 8 views
6

[VS2010/ASP.NET Web Forms]Report (RDLC) Localization/Globalizacja

Cześć,

W raporcie (RDLC) muszę dostarczyć lokalizacja/globalizację w dwóch językach (pt-BR i en-US) do następujących elementów: - Etykiety/Podpisy (stały tekst) - Interfejs interfejsu przeglądarki Viewer (przyciski i podpowiedzi do elementów sterujących, takich jak Znajdź, Dalej, Poprzedni itp.). - pola formujące, zgodnie z aktualną kulturą

Jaki jest najlepszy sposób na osiągnięcie tego?

  • przetłumaczyć stałe tytuły/etykiet Ive znaleźć kilka rozwiązań, które sprawiają, że tłumaczenie ręcznego RDLC's definicji XML, używając LabelLocID z TextBox raportu jako auxiliar. Ale wydaje się bardzo brzydki i pracowity!

  • Aby przetłumaczyć interfejs interfejsu użytkownika, znalazłem rozwiązania, które sugerują użycie niestandardowego obiektu IReportingViewerMessage MSDN. Czy jest jakieś inne rozwiązanie, aby zrobić to automatycznie?

  • Do formatowania pól danych, mogę ustawić atrybut języka raportu i pola tekstowego (w RDLC), ale muszę ustawić to zgodnie z aktualną kulturą. Jak mogłem to zrobić?

Dzięki!

Odpowiedz

9

Odniosłem sukces w lokalizowaniu raportów poprzez podawanie informacji o kulturze, którą chciałbym wyświetlić jako parametr do raportu. Oto podstawowy zarys:

  1. Ustawienia parametru raportu, która reprezentuje kod kultury, który chcesz wyświetlić. Nazwijmy to pReportCulture. Ustawić wartość statycznego jako domyślne dla „en-us”

  2. ustawić język raportu do wartości parm: language = Parametry pReportCulture.Value!. To powinno ustawić kulturę wszystkich pól tekstowych itp. W raporcie.

  3. Upewnij się, że w polach, które lokalizujesz, umieścisz format daty lub waluty. Użyj .toString ("c") lub innych poprawnych formatów. Jeśli wykonasz niestandardowe parsowanie tekstu, utracisz automatyczną lokalizację z ustawienia kultury.

To powinno zająć się większości wyświetlaniem lokalizacji.

+0

Jellie, dziękuję za odpowiedź. Myślę, że to rozwiązanie obsługuje tylko formowanie pól danych, czyż nie? A co z globalizacją tekstów o ustalonych etykietach/napisach? – outlookrperson

+0

@rperson, czy mówisz o wielojęzycznym tłumaczeniu tekstu na podstawie kultury? Jeśli tak, a masz tylko 2, z którymi możesz się zmagać, możesz umieścić wszystkie łańcuchy i załadować zestaw danych na podstawie parametru kultury. Następnie trzeba użyć wyrażenia, aby wyświetlić każdy z zestawu danych. –

+0

Mogłem rozwiązać problem formatowania pól za pomocą parametrów, jak również podpisu pól, jak zasugerowałeś. Lokalizacja interfejsu I rozwiązana przy użyciu IReportViewerMessages i Resources (resx). Dziękuję Ci! – outlookrperson

Powiązane problemy