如何:创建镜像 Windows 窗体和控件

一些语言文字(如阿拉伯语和希伯来语)传统上从右向左书写和阅读,而不是从左向右。 从右向左语言文字的用户不仅希望软件应用程序中的文本方向从右向左,而且希望窗体上所有控件的方向也是从右向左的。 如果在窗体上按照从右向左顺序放置文本和控件,则这就称为“镜像”,因为创建的是更常见的从左向右顺序的镜面反像。

窗体和控件的 RightToLeft 属性决定这些对象的读取顺序,而 RightToLeftLayout 属性控制窗体和一些容器控件如何呈现其所包含的控件的方式。 但是,并不是在每个控件上都定义了 RightToLeftLayoutTabControlGroupBoxPanel 是少数几个缺乏该实现的控件。 对于这些控件,必须使用某一个面板布局控件(如 FlowLayoutPanelTableLayoutPanel)来实现控件所包含控件的真正的从右向左呈现。

下面的过程演示如何形成窗体镜像以从右向左呈现,以及如何弥补 RightToLeftLayout 支持的一些限制。

有关以从右向左顺序排列文本的更多信息,请参见 如何:为全球化在 Windows 窗体中按从右到左的顺序显示文本

提示

显示的对话框和菜单命令可能会与“帮助”中的描述不同,具体取决于您现用的设置或版本。 若要更改设置,请在“工具”菜单上选择“导入和导出设置”。 有关更多信息,请参见 使用设置

创建镜像 Windows 窗体或控件

  1. 在 Visual Studio 中创建一个新的 Windows 窗体项目。 有关更多信息,请参见如何:创建新的 Windows 窗体应用程序项目

  2. 在 Form1 的**“属性编辑器”中将 RightToLeft 设置为“是”并将 RightToLeftLayout 设置为“True”**。

  3. 从**“工具箱”**中将一个 TabControl 控件拖到窗体上。

  4. 在 TabControl1 的**“属性编辑器”中将 Dock 属性设置为“完全”**,这是该属性的用户界面编辑器的中央方形区。

  5. TabControlRightToLeftLayout 属性设置为**“True”**。

  6. 从**“工具箱”中将一个 FlowLayoutPanel 控件拖到 tabPage1 上。 该控件将根据 tabPage1 的 RightToLeft 属性确定其默认布局顺序,本例中这意味着该属性将默认为“是”**。

  7. LabelTextBoxButton 控件添加到 FlowLayoutPanel

  8. 运行该项目。 应看到整个窗体(包括标题栏、控件框和所有包含的控件)从右向左呈现。

请参见

任务

如何:为全球化在 Windows 窗体中按从右到左的顺序显示文本

概念

Windows 窗体应用程序的双向支持

其他资源

对应用程序进行全球化和本地化

Windows 窗体可视化继承