Hello,
I'm using Ignite UI in multiple projects and I upgraded one from 17.1 to 17.2. I'm using MVC wrappers as I work in MVC. I noted that there were changes to the options for clearButtonTitle, dropDownButtonTitle, noMatchFoundText and placeHolder, since my custom strings were replaced by default ones. After a lot of searching, I still can't find any changelog or info to why these options have been removed and replaced with a forced locale option. Can you provide a link or similar to where I can find the changes?
I'm not sure why this change has been made either. From a localization perspective, using localized JavaScript files and more JavaScript dependent frameworks, I can understand, but not when using your MVC wrappers. Now, you're basically forcing everyone to rewrite affected components for a simple task such as setting a different text instead of the default.
And from what I can see at https://www.igniteui.com/help/customizing-the-localization-of-netadvantage-for-jquery-controls (17.2), there is not a common way to apply custom text either. Some components can take either lambda expressions or strings, others, such as igcombo, only take a string.
Before I upgrade any other projects and make any more changes to the one I upgraded so far, I would like to know:
Best regards
Fredrik Walka
Hello Fredrik,
Thank you for posting in our community.
As you noticed in version 17.2 we introduced some changes in regards to the newly released Localization feature. All the changes related to the removed options can be found in the Breaking Changes topic in our documentation. In general, all breaking changes that are introduced in the new volume releases are listed there (as well as revision history of the changes in the previous releases) so before upgrading you can have a look at this document for further reference. Additionally, if you have any concerns or questions beyond the scope of our documentation, you can always contact Infragistics support and we would be glad to help you.
Currently, all locale specific options are set via the “locale” option.
Grid:
//Initialize $(".selector").igGrid({ locale: { optionChangeNotSupported: "Changing {optionName} is not supported" } });
Grid Feature:
//Initialize $(".selector").igGrid({ features: [ { name : "ColumnMoving", locale: { dropDownMoveFirstText : "New Move First"} } ] });
MVC Wrapper:
.Features(features => { features.GroupBy().Locale(l=> l.EmptyGroupByAreaContentSelectColumnsCaption("Custom text")); });
For igGrid, igTreeGrid and igHierarachicalGrid “locale” can be set via both lambda expressions and string and for all other controls, it can be set only via string.
In regards to your question about custom texts being set outside of the localization context, this is not possible at this point. The reason is that all the default values for these texts are part of the controls localization. In order to notify the control that they have custom values and it does not need to retrieve the values from the default resource files they have to be set via the locale option.
Please do not hesitate to contact me if you need any further information regarding this matter.
Regards,Vasya KacheshmarovaAssociate Software DeveloperInfragistics