user-interface - 在同一控件中同时显示 RTL 和 LTR 语言

标签 user-interface multilingual right-to-left

我正在开发一个 WinForms 应用程序,并且有几个控件(特别是列表框和 datagridview)需要同时显示 RTL 和 LTR 数据的混合。例如,我有一个包含英语、阿拉伯语、德语和希伯来语字符串的列表框。显然,列表框控件具有 RightToLeft 属性,目前,我的 UI 中有一个按钮,可让用户根据需要在 RTL 和 LTR 之间切换该属性。我的客户似乎对这种方法感到满意,但我很好奇其他设计师/开发人员通常如何处理这种情况?

最佳答案

我不太了解 Winforms,但您可能可以将 Unicode 方向性控制字符添加到实际字符串中。虽然有点 hacky,但应该可以用。

以下是相关字符:

  • RLM(从右到左标记)- 一个不可见的从右到左字母。您可以将其放在右括号之后,以确保它出现在右端,或者放在希伯来字符串和数字之间,以确保数字位于字符串的左侧。
  • LRM(从左到右标记)- 与 RLM 类似,但用于从左到右。
  • RLE(从右到左嵌入)- 将其放在 RTL 字符串的开头
  • LRE(从左到右嵌入)- 将其放在 LTR 字符串的开头
  • PDF(流行定向格式)- 将其放在以 RLE 或 LRE 开头的字符串末尾。它类似于 HTML 中的结束标记:שלום**

您可以从字符映射表中复制并粘贴它们,或者从 Unicode 数字创建字符串并在运行时连接它们。

希望有帮助。

关于user-interface - 在同一控件中同时显示 RTL 和 LTR 语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14045172/

相关文章:

Java JFrame无法创建按钮(数组列表)

flutter - 如何为Flutter中的所有设备将小部件与Media Query对齐?

ckeditor - CKEditor 中的文本方向

jquery - 带有 jquery 和 dir=rtl 的 HTML 页面在 chrome 上显示为空白

html - Bootstrap 下拉 RTL 对齐

java - JButton 无法识别 JRadioButton 是否被选择

android - 缩放已定义相对尺寸的简单 UI

c# - byte[] 到 C# 中的 byte*

java - 用于文本分析的Elasticsearch Analyzers

WordPress 导航菜单顺序错误 - 如何修复?