VB.NET localization - vb.net

In my winform app in VB.NET I want to use the localization option.
But i have a few questions/problems.
I'm using a menu strip to select an other language.
But it seems that is doesn't change my menustip text to my selected language. It does change my labels, buttons, and textboxes but menu strips don't seem to change when I choose another language.
Also is it possible to get those resx files such as MyForm.fr-FR.resx compiled so it isn't an external file outside my app? Or to get those files in an Language folder at the same location of my app, so i don't have all those fr-FR & nl-Nl folders in the same location as my program?

http://www.vb-helper.com/howto_net_localize_at_runtime.html
Got it solved with this example.

Related

Open documents in Xamarin Forms

I would like opening documents in a Xamarin Forms app possibly without writing platform-specific code.
Documents could be PDF or Word files and I do NOT want to open documents inside the app, rather I want to use the default app: default Pdf Reader and Word (if installed). Any idea?
I am trying by using Device.OpenUri(new Uri("file:///Assets/pdf-sample.pdf")) and setting PDF file Build Action=Embedded Result, unfortunately without success.
You can do it simply with webview (there goes an example: https://developer.xamarin.com/recipes/cross-platform/xamarin-forms/controls/display-pdf/)

Xamarin Forms UWP - Display PDF

Please, help me and tell me what am I missing.
My goal is to display simple PDF file (stored locally for example) in the WebView control. Can I bind path of the file to the Source property of the WebView? Or what is the correct way to show PDF in UWP?
P.S. and if the only option is to do like here - how must I add pdf.js to my project??
My goal is to display simple PDF file (stored locally for example) in the WebView control.
If you want to display pdf in WebView control, then the methods in Display a Local PDF File in a WebView is most like the only way to solve your problem.
You can follow the steps in the xamarin official document, and here are some additional tips we need to pay attention to:
After downloading pdfjs, for UWP app, you need to copy the entire folder into the Assets folder, make sure that the folder is named "pdfjs", otherwise you will need to modify the code to change the path.
Your .pdf file should be stored into the Content folder under the Assets folder, it means you will need to create a new folder named "Content" under Assets and copy your .pdf file into this folder. Otherwise, you will also need to modify the code to change the path.
After copying your .pdf file into the "Content" folder, don't forget to change the Build Action of this file to Content like this:
Or what is the correct way to show PDF in UWP?
In uwp app, you can use Image to show PDF file, you can refer to the official PDF document sample. But I don't know if PDF can be displayed as Image in Android and IOS apps, since you're developing a cross-platform project, I think it's better to use the built-in method to solve such problem.
If a demo for xamarin UWP is needed, you can leave a comment, I will upload my demo later.

Cannot create localizable strings files copies in XCode4

I have a "Resources/en.lproj/Localized.strings" file, with some key/value pairs in the format:
"key"="value";
I select this file and in File Inspector in the Utilities Pane I choose to add a new localization (es) pressing the '+' button in the Localization tab.
This action should create a new file "Resources/es.lproj/Localized.strings", but instead the original "Resources/en.lproj/Localized.strings" now displays a small triangle at the left ( as if it were a folder ) and holds inside two files Localized.strings (English) and Localized.strings (Spanish). No es.lproj directory created.
I have never read of this behavior even in references to this using XCode4.
What I'm missing?
Updated info:
I have checked the app bundle installed in my iPhone Simulator and the folders are created there, with the corresponding files.
I don't know if this is the default way but is confusing to me since reading the documentation this is not what I understand.
Your could try this : Quit XCode, relaunch your project. Remove all localizations from your project properties (keeping the files when asked), add them back, remove es localization on your file, then add it back.

Silverlight 4 MVVM app, resx editing by user, Blend only?

In a Silverlight 4 app, our user base needs to define for us what content they want on buttons, labels, various screen text, etc. I understand the methods of resource files, but what i'm wondering is when wanting to give that kind of control to the users to define the text in the resource file, what is the best way to let them do that in a way that they can view their changes to the XAML pages? Do they need to have Blend installed?
I vaguely remember when doing a WinForms app, at one point I handed off to the users the actual winform, and they used some sort of visual designer to edit button text, labels, etc., and those changes were then saved to the resource file.
Our app is MVVM, so each item in the XAML would bind to a property in its view model, and that property would then load the entry from the resource file.
If there is a way to let the user update the contents of the resx file while visually reviewing their changes please let me know.
Thanks very much in advance for any assistance.
What I have done in the past is to have a dedicated assembly for Resources (resx) files. By default, they are "embedded" into the assembly. The trick is to change the property on the resx file to NOT be embedded (False). This way, the files are separate resx xml files that must go with the assembly (and live in the same /bin directory of the running application). This is what you see in some /bin directories with the /en-US/ and other resources. In the past, I have created a simply GUI for users to be able to edit these resx files that gets written back to disk. I am not familiar with Silverlight's inner workings for this type of permissions needed, but I would guess at worse case the edited resx files just get uploaded to a server where a new copy is downloaded on next app restart or alike.
Now, when I said "in the past", that was back in 2003 days. Recently I had to do this manually using the ResXResourceReader because of an existing assembly I could not modify.
Some example code (writing it from memory, completely untested):
using (var reader = new ResXResourceReader("[path-to-bin]/MyResources.resx"))
{
var value = reader["My_key_in_the_resx_file"].ToString;
}
Do note that by going this route, you do have access to other types of resources such as binary and files embedded int he resx files.
Lastly, watch your encoding formats. Some over-seas editors use UTF16. So going with a common Unicode converter may be needed.
Also note there is a ResXResourceWriter class, should you want to roll your own writers for updating the resx files through code.

vb.net vs2010 project deployment problem: eula.rtf is not displayed during application deployment. Any ideas?

I've created a setup and deployment project for my vb.net application using the Visual Studio 2010 wizard. I also added the eula.rtf file to the setup project and set it to install to the user's application folder. I then added a license agreement UI dialog in the setup project and pointed the licenseFile to eula.rtf. However, when testing the resulting setup.msi, the UI License Agreement dialog appears but no text is displayed inside the box where the eula should appear. I tried re-naming the eula and tried to change the encoding of the file but without success. Am I missing something? What should I do to make it work?
Many thanks.
Did you actually create a .rtf in the proper format or did you just rename a text file? You'll need either Wordpad or Microsoft Word to create one. Wordpad is the better choice, it is likelier to create RTF in a format that the rich text box fully supports.