windows 如何本地化UserControl

dauxcl2d  于 2023-05-23  发布在  Windows
关注(0)|答案(2)|浏览(209)

我正在开发一个必须支持多种语言的windows应用程序。
我遵循了http://msdn.microsoft.com/en-us/library/y99d1cd3(v=vs.71).aspx下面的文章,使我的windows应用程序可本地化。
除了usercontrols,一切都正常。我必须为每种语言创建一个用户控件吗?如何使用户控件继承从右到左属性?最佳实践是什么?

v9tzhpje

v9tzhpje1#

UserControls必须以与表单相同的方式进行本地化(Localizable = TrueLanguage = ...),当它们嵌入到本地化的表单中时,你不会在设计器中看到本地化,但在运行时本地化做得很好。
对于RightToLeft属性:选择您的UserControl(选择其中的控件,然后按ESC键,直到主控件被选中-在属性面板中,您应该看到UserControl的名称和类型= System.Windows.Forms.UserControl),转到属性面板并搜索RightToLeft属性,在同一面板中,您还可以使用LocalizableLanguage属性,它们必须像在窗体中一样使用。

oprakyz7

oprakyz72#

有两个组件可以使用户控件在Visual Studio设计器中可本地化和可编辑:
1.将顶部Form对象的Localizable属性设置为True
1.在Designer中定义要本地化和编辑的control properties,如下所示(借用自here):

*C#

  1. [Category("Appearance")]
  2. [Description("The title of the log data.")]
  3. [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
  4. [Localizable(true)]
  5. [HelpKeywordAttribute("AttributesDemoControlLibrary.AttributesDemoControl.TitleText")]
  6. public string TitleText
  7. {
  8. get
  9. {
  10. return this.label1.Text;
  11. }
  12. set
  13. {
  14. this.label1.Text = value;
  15. }
  16. }

您可能需要切换Localizable属性并清理/重新生成解决方案,然后数据才能反映在资源文件中。

展开查看全部

相关问题