在C#中是否有办法可以打印从右到左的语言,如阿拉伯语,以便输出从右到左,而不是右对齐。
此HTML代码段可能有助于解释要求:
<div style="direction:rtl;">كمشنيش (شسي شسي)</div> <!-- correct -->
<div style="text-align:right;">كمشنيش (شسي شسي)</div> <!-- just right aligned -->
我希望我的应用程序看起来像第一个div。
答案 0 :(得分:3)
如果您正在使用WinForms
,请将表单RightToLeft property设置为RightToLeft.Yes
。默认情况下,对表单的任何控件都将自动继承该属性。如果您只希望某些控件具有该属性,则可以为每个控件单独设置该属性。
如果您正在使用Silverlight 4,则可以设置FlowDirection property。
<TextBox FlowDirection="RightToLeft" ... />
有关Silverlight here中的“从右到左”文本的更多信息。
答案 1 :(得分:1)
您可以从右到左打印多种方式和背景。在Web应用程序中,您可以在html tag中解决此问题。
在WinForms中,@ keyboardP建议将RightToLeft属性设置为Yes。
在WPF FlowDirection中可以使用,但这应该在视图设计的早期阶段完成,因为它可能会导致在从左到右读数设计的视图中出现意外结果。
答案 2 :(得分:0)
将dir="rtl"
属性添加到<html>
开放标记就足够了。
查看以下文章:Creating HTML Pages in Arabic, Hebrew and Other Right-to-left Scripts