关于RichTextBox字体的问题

大部分控件你把属性设置成什么,那么预览以及运行的时候自然字体也就是那种类型——比如普通的WinForm程序中,TextBox的字体包含字号、样式等属性……一旦设置了它们,你运行带有此文本框的程序,自然输入的字体样式等也是如此。

但是RichTextBox不然——如果你把一个RichTextBox设置成“宋体,二号”或者其它中文字体,那么你运行程序,你会很惊讶的发现输入中文的时候的确是宋体二号,但是输入西文(如英语等),字体就不再是中文字体了,而是Arial或者其它默认的某个国家的西文字体。

这是为什么呢?究其原因在于RichTextBox有一个LanguageOption属性,它是一个枚举值(可以参考:http://msdn.microsoft.com/zh-cn/library/system.windows.forms.richtextboxlanguageoptions)——默认情况下会根据键盘调整自动调整输入字体大小、字态……。因此必须重设该属性(设置为UIFonts即可,Form_Load事件中)。

    private void MainForm_Load(object sender, EventArgs e)
     {
            TxtEditor.LanguageOption = RichTextBoxLanguageOptions.UIFonts; //防止中英文字体不一致

     }

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值