Localization Support in Windows Forms Ribbon
18 Nov 201820 minutes to read
RibbonControlAdv now supports adaptation of its controls and its details to meet different languages and cultural requirements. This involves configuring the ribbon to a specific language.
Adding ILocalizationProvider
-
Include the required namespaces at the beginning of the source file.
-
Create a class that implements the
ILocalizationProviderinterface defined in the Syncfusion.Windows.Forms namespace in the Syncfusion.Shared.Base.dll. -
Return the localized versions of the strings that correspond to the string identifiers.
-
String identifiers are defined in the
ToolsResourceIdentifierclasses in Syncfusion.Tools.Windows
using Syncfusion.Windows.Forms.Tools;Imports Syncfusion.Windows.Forms.Tools-
Leave an empty string for the rest of the identifiers that are not involved in the localization. These identifiers are loaded with a default value.
-
Assign this instance to the Provider property of the LocalizationProvider class before the InitializeComponent call in the constructor of the application.
LocalizationProvider.Provider = new localization();LocalizationProvider.Provider = New localization()- The Following is an example for localization
class localization : ILocalizationProvider
{
public string GetLocalizedString(System.Globalization.CultureInfo culture, string stringname, object obj)
{
switch (stringname)
{
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonAdd:
return "添加";
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonRemove:
return "移除";
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonCancel:
return "取消";
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonOk:
return "确定";
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonReset:
return "重置";
case ToolsResourceIdentifiers.CustomizeRibbonDialogLabel:
return "自定义功能区";
case ToolsResourceIdentifiers.CustomizeRibbonDialogChooseCommands:
return "选择命令";
case ToolsResourceIdentifiers.CustomizeRibbonDialogMainTab:
return "主选项卡";
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonNewGroup:
return "新建组";
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonNewTab:
return "新建选项卡";
case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonRename:
return "重命名";
case ToolsResourceIdentifiers.CustomizeRibbonDialogCustomizationLabel:
return "自定义选项";
case ToolsResourceIdentifiers.CustomizeRibbonDialogCaption:
return "自定义功能区";
case ToolsResourceIdentifiers.CustomizeQuickAccessLabel:
return "快速访问工具栏";
case ToolsResourceIdentifiers.QuickAccessCustomizeMenu:
return "自定义快速访问工具栏";
case ToolsResourceIdentifiers.QuickAccessAddItem:
return "添加项目";
case ToolsResourceIdentifiers.QuickAccessDialogButtonAdd:
return "添加";
case ToolsResourceIdentifiers.QuickAccessDialogButtonCancel:
return "取消";
case ToolsResourceIdentifiers.QuickAccessDialogButtonOk:
return "确定";
case ToolsResourceIdentifiers.QuickAccessDialogButtonReset:
return "重置";
case ToolsResourceIdentifiers.QuickAccessDialogButtonRemove:
return "移除";
case ToolsResourceIdentifiers.QuickAccessMinimizeTheRibbon:
return "最小化功能区";
case ToolsResourceIdentifiers.QuickAccessPlaceAboveRibbon:
return "放置于功能区上方";
case ToolsResourceIdentifiers.QuickAccessPlaceBelowRibbon:
return "放置于功能区下方";
case ToolsResourceIdentifiers.QuickAccessToolBarLabel:
return "快速访问工具栏";
case ToolsResourceIdentifiers.CustomizeRibbonDialogRenameCancelButton:
return "取消";
case ToolsResourceIdentifiers.CustomizeRibbonDialogRenameCaption:
return "重命名";
case ToolsResourceIdentifiers.CustomizeRibbonDialogRenameOkButton:
return "确定";
case ToolsResourceIdentifiers.CustomizeRibbonRenameDisplayLabel:
return "显示名称";
case ToolsResourceIdentifiers.CustomizationLabel:
return "自定义";
case ToolsResourceIdentifiers.CustomizeMenu:
return "自定义";
case ToolsResourceIdentifiers.QuickAccessDialogDropDownName:
return "快速访问下拉菜单";
case ToolsResourceIdentifiers.QuickAccessCustomizeCaption:
return "快速访问工具栏";
case ToolsResourceIdentifiers.QuickAccessDialogCommands:
return "命令";
case ToolsResourceIdentifiers.CustomizeRibbonDialogColumnHeader:
return "列标题";
case ToolsResourceIdentifiers.CustomMenu:
return "自定义菜单";
case ToolsResourceIdentifiers.QuickAccessDialogCustomizeRibbon:
return "自定义功能区";
default:
return string.Empty;
}
}
}Class localization
Implements ILocalizationProvider
Public Function GetLocalizedString(ByVal culture As System.Globalization.CultureInfo, ByVal stringname As String, ByVal obj As Object) As String
Select Case stringname
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonAdd
Return "添加"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonRemove
Return "移除"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonCancel
Return "取消"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonOk
Return "确定"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonReset
Return "重置"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogLabel
Return "自定义功能区"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogChooseCommands
Return "选择命令"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogMainTab
Return "主选项卡"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonNewGroup
Return "新建组"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonNewTab
Return "新建选项卡"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogButtonRename
Return "重命名"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogCustomizationLabel
Return "自定义选项"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogCaption
Return "自定义功能区"
Case ToolsResourceIdentifiers.CustomizeQuickAccessLabel
Return "快速访问工具栏"
Case ToolsResourceIdentifiers.QuickAccessCustomizeMenu
Return "自定义快速访问工具栏"
Case ToolsResourceIdentifiers.QuickAccessAddItem
Return "添加项目"
Case ToolsResourceIdentifiers.QuickAccessDialogButtonAdd
Return "添加"
Case ToolsResourceIdentifiers.QuickAccessDialogButtonCancel
Return "取消"
Case ToolsResourceIdentifiers.QuickAccessDialogButtonOk
Return "确定"
Case ToolsResourceIdentifiers.QuickAccessDialogButtonReset
Return "重置"
Case ToolsResourceIdentifiers.QuickAccessDialogButtonRemove
Return "移除"
Case ToolsResourceIdentifiers.QuickAccessMinimizeTheRibbon
Return "最小化功能区"
Case ToolsResourceIdentifiers.QuickAccessPlaceAboveRibbon
Return "放置于功能区上方"
Case ToolsResourceIdentifiers.QuickAccessPlaceBelowRibbon
Return "放置于功能区下方"
Case ToolsResourceIdentifiers.QuickAccessToolBarLabel
Return "快速访问工具栏"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogRenameCancelButton
Return "取消"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogRenameCaption
Return "重命名"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogRenameOkButton
Return "确定"
Case ToolsResourceIdentifiers.CustomizeRibbonRenameDisplayLabel
Return "显示名称"
Case ToolsResourceIdentifiers.CustomizationLabel
Return "自定义"
Case ToolsResourceIdentifiers.CustomizeMenu
Return "自定义"
Case ToolsResourceIdentifiers.QuickAccessDialogDropDownName
Return "快速访问下拉菜单"
Case ToolsResourceIdentifiers.QuickAccessCustomizeCaption
Return "快速访问工具栏"
Case ToolsResourceIdentifiers.QuickAccessDialogCommands
Return "命令"
Case ToolsResourceIdentifiers.CustomizeRibbonDialogColumnHeader
Return "列标题"
Case ToolsResourceIdentifiers.CustomMenu
Return "自定义菜单"
Case ToolsResourceIdentifiers.QuickAccessDialogCustomizeRibbon
Return "自定义功能区"
Case Else
Return String.Empty
End Select
End Function
End Class
Ribbon Resource Identifier
|
String |
Description |
|---|---|
|
CustomizeRibbonDialogButtonAdd |
`Add` button to add selected item in Customize Ribbon window |
|
CustomizeRibbonDialogButtonRemove |
`Remove` button to remove selected item in Customize Ribbon window |
|
CustomizeRibbonDialogButtonCancel |
`Cancel` button to cancel the changes in Customize Ribbon window |
|
CustomizeRibbonDialogButtonOk |
`Ok` button to save the changes in Customize Ribbon window |
|
CustomizeRibbonDialogButtonReset |
`Reset` button to reset all the customizations in Customize Ribbon window |
|
CustomizeRibbonDialogLabel |
Main `Customize the Ribbon` label in Customize Ribbon window |
|
CustomizeRibbonDialogChooseCommands |
`Choose Commands from` combo box header |
|
CustomizeRibbonDialogMainTab |
`Customize Ribbon` tab header in left panel in Customize window |
|
CustomizeRibbonDialogButtonNewGroup |
`New Group` button to add new group in Customize Ribbon window |
|
CustomizeRibbonDialogButtonNewTab |
`New Tab` button to add new tab in Customize Ribbon window |
|
CustomizeRibbonDialogButtonRename |
`Rename` button to rename selected item in customize Ribbon window |
|
CustomizeRibbonDialogCustomizationLabel |
`Customizations` label in customize ribbon window |
|
CustomizeRibbonDialogCaption |
Caption in customize ribbon window |
|
CustomizeQuickAccessLabel |
Main label in customize QAT |
|
QuickAccessCustomizeMenu |
Customize menu in quick access |
|
QuickAccessAddItem |
Add Item label in quick access |
|
QuickAccessDialogButtonAdd |
`Add` button to add selected item in Customize QAT window |
|
QuickAccessDialogButtonCancel |
`Cancel` button to cancel the changes in Customize QAT window |
|
QuickAccessDialogButtonOk |
`Ok` button to save the changes in Customize QAT window |
|
QuickAccessDialogButtonReset |
`Reset` button to reset all the customizations in Customize QAT window |
|
QuickAccessDialogButtonRemove |
`Remove` button to remove selected item in Customize QAT window |
|
QuickAccessMinimizeTheRibbon |
MinimizeTheRibbon option in quick access |
|
QuickAccessPlaceAboveRibbon |
PlaceAboveRibbon option in quick access |
|
QuickAccessPlaceBelowRibbon |
PlaceBelowRibbon option in quick access |
|
QuickAccessToolBarLabel |
QAT label |
|
CustomizeRibbonDialogRenameCancelButton |
`Cancel’ button in Rename popup window |
|
CustomizeRibbonDialogRenameCaption |
Rename caption in rename popup window |
|
CustomizeRibbonDialogRenameOkButton |
`Ok` button in rename popup window |
|
CustomizeRibbonRenameDisplayLabel |
Display Name label in rename popup window |
|
CustomizationLabel |
Customization label in window |
|
CustomizeMenu |
Customize menu option |
|
QuickAccessDialogDropDownName |
Drop down name in quick access dialog |
|
QuickAccessCustomizeCaption |
Customize caption in customizing QAT. |
|
QuickAccessDialogCommands |
Commands dialog in quick access |
|
CustomizeRibbonDialogColumnHeader |
Column header in Customize ribbon |
|
CustomMenu |
Custom menu label |
|
QuickAccessDialogCustomizeRibbon |
Quick access dialog in customize ribbon window |
Right To Left
In Right To Left support, RibbonControlAdv aligns all its controls from right To left when the ribbon property `RightToLeft’ is set to Yes.
this.ribbonControlAdv1.RightToLeft = RightToLeft.Yes;Me.ribbonControlAdv1.RightToLeft = RightToLeft.Yes