如何解决.NET4.8的RichTextBox文本对齐问题
将文本对齐方式与RichTextBox进行比较时,其行为已从.Net4.6.1更改为.Net4.8。
有关如何在.Net4.8中实现.Net 4.6.1的早期行为的任何帮助?
public Form1()
{
InitializeComponent();
RichTextBox richTextBox1 = new RichTextBox()
{
Width = 300,Height = 20,Location = new Point(100,100)
};
richTextBox1.Text = "中文_Dummy_Text";
TextBox textBox = new TextBox()
{
Width = 300,200)
};
textBox.Text = "中文_Dummy_Text";
this.Controls.Add(richTextBox1);
this.Controls.Add(textBox);
}
解决方法
在App.Config中添加运行时设置(如下所示)已还原为.NET 4.8中较旧的RTB。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
</startup>
<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Forms.DoNotLoadLatestRichEditControl=true"/>
</runtime>
</configuration>
,
将多行属性设置为false还可以恢复RTB的早期行为
richTextBox1.Multiine = false
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。