Localization builtin texts


Author
Message
Jiri Brazda
Jiri Brazda
StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)
Group: StrataFrame Users
Posts: 78, Visits: 356
I'm just evaluating Your framework and the only thing I need at the moment is to have all texts in my application in Czech. I have prepared a few custom texts and these are localized properly using embeded resource option. Is there any simple way how to translate 5 builtin texts? I do not want to specify anything else. I hope that when I need to localize five simple words, it is not necessary to build it into core of Your framework.

As I have said, I'm just evaluating the framework. In case that I buy it and start to use it, I would definitely cooperate with You on Czech localization.

But for now I need to have my test application completely translated without any other issues. Is it possible, please?

If You can show me a simple piece of code that demonstrates how to do it, here are the czech translations Yes = Ano, No = Ne.

Jiri Brazda
Jiri Brazda
StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)
Group: StrataFrame Users
Posts: 78, Visits: 356
Additionally I'm posting my Message_Languages.xml:

<?xml version="1.0" standalone="yes"?>

<NewDataSet>

<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="MessageLanguages" msdata:UseCurrentLocale="true">

<xs:complexType>

<xs:choice minOccurs="0" maxOccurs="unbounded">

<xs:element name="MessageLanguages">

<xs:complexType>

<xs:sequence>

<xs:element name="lng_pk" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" type="xs:int" minOccurs="0" />

<xs:element name="lng_prj_pk" type="xs:int" minOccurs="0" />

<xs:element name="lng_codepage" type="xs:int" minOccurs="0" />

<xs:element name="lng_isolanguage" type="xs:string" minOccurs="0" />

<xs:element name="lng_yes" type="xs:string" minOccurs="0" />

<xs:element name="lng_no" type="xs:string" minOccurs="0" />

<xs:element name="lng_retry" type="xs:string" minOccurs="0" />

<xs:element name="lng_cancel" type="xs:string" minOccurs="0" />

<xs:element name="lng_EventId" type="xs:string" minOccurs="0" />

<xs:element name="lng_baselanguage" type="xs:boolean" minOccurs="0" />

<xs:element name="lng_created" type="xs:dateTime" minOccurs="0" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:choice>

</xs:complexType>

</xs:element>

</xs:schema>

<MessageLanguages>

<lng_pk>6</lng_pk>

<lng_prj_pk>3</lng_prj_pk>

<lng_codepage>1029</lng_codepage>

<lng_isolanguage>ces</lng_isolanguage>

<lng_yes>Ano</lng_yes>

<lng_no>Ne</lng_no>

<lng_retry>Znovu</lng_retry>

<lng_cancel>Zruçit</lng_cancel>

<lng_EventId>¬ˇslo ud losti</lng_EventId>

<lng_baselanguage>true</lng_baselanguage>

<lng_created>2008-03-21T07:51:15.653+01:00</lng_created>

</MessageLanguages>

<MessageLanguages>

<lng_pk>4</lng_pk>

<lng_prj_pk>3</lng_prj_pk>

<lng_codepage>1033</lng_codepage>

<lng_isolanguage>eng</lng_isolanguage>

<lng_yes>Yes</lng_yes>

<lng_no>No</lng_no>

<lng_retry>Retry</lng_retry>

<lng_cancel>Cancel</lng_cancel>

<lng_EventId>Event ID</lng_EventId>

<lng_baselanguage>true</lng_baselanguage>

<lng_created>2008-03-20T16:50:03.487+01:00</lng_created>

</MessageLanguages>

</NewDataSet>


Ivan George Borges
Ivan George Borges
Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
Hi George.

Having a nice weekend? Wink

I have changed my Messaging Project to show Ano/Ne for Yes/No, which in my case (Portuguese), would be Sim/Não.

So, I'm attaching some pictures with the steps I did to accomplish this. As I was trying to tell you before, this all went through the Localization & Messaging Editor.

So, once you open the Localization and Messaging Editor, you go for the File Menu and choose Open Project. You will get the following screen, click on your project and choose Edit.

Within my project, I will choose my language (Portuguese (Brazil), you would probably have added yours), and go for Edit again.

Notice in the following picture, that I have changed my Yes/No strings into Ano/Ne:

And this is one of my application's simple form, I made some changes and click the Close button, which brought the "Want to Save?" question. Have a look at the Yes/No buttons with Ano/Ne translations:

Hope it helps.

Have a nice Easter! Cool

Jiri Brazda
Jiri Brazda
StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)
Group: StrataFrame Users
Posts: 78, Visits: 356
Hi Ivan,

thank You for Your help and patience. I have followed the steps You have described in Your post (I did the same before). However - I haven't got the result as You have got on the last picture. It seems to me that there is something wrong in my application an not in my localization project. I have created simple application where I have included the "Message_Languages.xml" file generated by LME. It is included in the attachment of this post.

It seems to me that this file is completely ignored by application because when I change English texts to some mindless texts ("AAA", "BBB", etc.) the application still uses "Yes", "No", etc.

I'm really confused by this and I'm so sorry for disturbing You :-(

Attachments
WindowsApplication1.zip (88 views, 663.00 KB)
Ivan George Borges
Ivan George Borges
Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
Hey George!

I have downloaded your sample and here are some things we could start working on:

Your Message_Languages.xml is not embedded within your application. You could go this way, but it is recommended to use an embedded Message Store.

Please, to help you get the idea, have a look at the help file under "Application Framework" / "Localization & Messaging Editor" / "Messaging" / "Configuring the Message Store" and also "Localization"

Looking at you AppMain.vb, I can see you have set the MessageLocaleID to 1029, which is fine. But you haven't set up your Message Store, which will be required in case you don't embed it into your application.

See if you make progress and then let me know if we need to work some more steps together.

Cheers. Wink

 

Jiri Brazda
Jiri Brazda
StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)
Group: StrataFrame Users
Posts: 78, Visits: 356
Hi Ivan,

I have missed to set the language xml file in my sample application but even when I set it there was no change. However I have made some progress:

- I have tried to call "ShowAvailableLanguages" method in InitApplication - and when running my application there occurred the foolowing error:

FileNotFoundException
  The file [Message_Languages.xml] could not be found.  The localization languages table could not be loaded.

Source     : MicroFour StrataFrame Base

Stack Trace:
   at MicroFour.StrataFrame.UI.Localization.LoadLanguageTable(Boolean IgnoreExceptions)
   at MicroFour.StrataFrame.UI.Localization.GetLanguagesFromXml()
   at MicroFour.StrataFrame.UI.Localization.GetAllAvailableLanguagesFromData()
   at MicroFour.StrataFrame.UI.LanguageSelectionDialog.LoadLanguages()
   at MicroFour.StrataFrame.UI.LanguageSelectionDialog..ctor(String ApplicationKey, String UserName)
   at MicroFour.StrataFrame.UI.Localization.ShowAvailableLanguages(String ApplicationKey, String UserName)
   at MicroFour.StrataFrame.UI.Localization.ShowAvailableLanguages()
   at LocalizationSample.Form1.ChooseLanguage()
   at LocalizationSample.Form1.LinkLabel1_LinkClicked(Object sender, LinkLabelLinkClickedEventArgs e)
   at System.Windows.Forms.LinkLabel.OnLinkClicked(LinkLabelLinkClickedEventArgs e)
   at System.Windows.Forms.LinkLabel.OnMouseUp(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Label.WndProc(Message& m)
   at System.Windows.Forms.LinkLabel.WndProc(Message& msg)
   at System.Windows.Forms.Control.ControlNativewindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativewindow.WndProc(Message& m)
   at System.Windows.Forms.Nativewindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

- Additionally I have tried to run Your sampla application from "Sample Console" called "BasicLocalizationImplementation" - and when clicking "Change Language" link the exactly same error has occurred.

So I suspect that there is nothing to do with my application but the operating system environment. I'm running Windows Vista Business EN SP1 and Visual Studio 2005 Professional.

Do You have any idea what could be the problem?

Thanks a lot

Trent Taylor
Trent Taylor
StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 6.9K
I have tried to call "ShowAvailableLanguages" method in InitApplication - and when running my application there occurred the foolowing error:

Yes...the Message_Languages file cannot be found.  When you call the ShowAvailableLanguages, it looks for the Message_Languages.xml file.  If this file is NOT embedded, then you MUST specify the location of the external XML files (either all XML files have to be external or embedded, you cannot mix the two).  You specify the XML file location in the AppMain.vb or program.cs file in the InitApplication method or whereever you are setting the LocaleID.  The property would be the MessagingXMLPath property.

Jiri Brazda
Jiri Brazda
StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)StrataFrame User (146 reputation)
Group: StrataFrame Users
Posts: 78, Visits: 356
Ok, so I'm going to breifly specify what is working on my computer and what not:

- When I specify MessageKeyType and MessageXMLPath, it works fine, everything is localized properly (even Yes and No texts); however I would like to use Your recommended way (embedded resource) to distribute languages with my application (especially when I would like to have only one...)

- When I do not specify MessageKeyType and MessageXMLPath (for using embedded language files), it never works - disregarding wherher I set language files as Embedde Resource or not

- Finally - as I have mentioned in my previous post - when I try to run Your Sample application (deployed during installation of Your framework) I receive the same error stating that the Message_Languages.xml could not be found. And this is why it seems to me that the problem doesn't come from mz development project but from somewhere else on my computer, since I receive this error when running sample aplication compilled by You...

Ivan George Borges
Ivan George Borges
Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)Strategic Support Team Member (3.5K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
OK. Make sure it is embedded on its property window. Also, try putting this line of code in your AppMain.vb's InitApplication: 

MicroFour.StrataFrame.UI.Localization.RegisterEmbeddedXmlFile(Reflection.Assembly.GetExecutingAssembly(), "YourNameSpace.Message_Languages.xml")

Trent Taylor
Trent Taylor
StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 6.9K
Ivan's post will fix your problem.  I have also made a change to the framework to do a more exhaustive search.  You can get it here: http://forum.strataframe.net/FindPost15182.aspx .
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search