C# 以编程方式控制richEditText的水平滚动

C# 以编程方式控制richEditText的水平滚动,c#,richedit-control,C#,Richedit Control,我使用C#中的richEditText来显示从右向左写入的乌尔都语数据。一旦对数据控件进行了更改,它的水平滚动就会自动移动到最左边,就像它对英语或任何编写脚本的左边所做的一样。每次修改/更改richedit的文本时,我都想将我的HScroll移到最右边。您必须设置RichTextbox的属性 对于wpf应用程序集FlowDirection=“RightToLeft” 对于windows窗体应用程序集LefttoRight=“Yes” 设置这些属性后,使用此语法更新文本。对我来说很好 rich

我使用C#中的richEditText来显示从右向左写入的乌尔都语数据。一旦对数据控件进行了更改,它的水平滚动就会自动移动到最左边,就像它对英语或任何编写脚本的左边所做的一样。每次修改/更改richedit的文本时,我都想将我的HScroll移到最右边。

您必须设置RichTextbox的属性

  • 对于wpf应用程序集
    FlowDirection=“RightToLeft”

  • 对于windows窗体应用程序集
    LefttoRight=“Yes”

设置这些属性后,使用此语法更新文本。对我来说很好

richTextBox1.AppendText("میں نے ایک. نیٹ پروگرامر ہوں." + "\r");
richTextBox1.Focus();

LefttoRight属性设置为文本从右向左显示。问题在于HscrollBar没有像英文文本那样设置在控件的右侧,而是设置在控件的左侧,因为我的文本是从右向左对齐的,所以我希望HScroll也是从右对齐的我已经尝试了ScrollToCaret()对于richtextbox,现在水平滚动向右移动,但垂直滚动也向下移动。我不想让它移动。ScrollToCaret和Focus显然做着同样的工作。但我想这是最好的,我可以不做一些认真的编码。感谢关键是在末尾添加回车符“\r”,然后调用focus();您使用的是windows窗体还是WPF?关键是在末尾添加回车符“\r”,然后调用focus();