我感觉自己像一个真实的的菜鸟张贴这一点,但我似乎找不到任何东西为这一点...
我有一个控件,我基本上试图切换字体之间的粗体和非粗体。这应该很简单...
但是,您无法访问Control.Font.Bold属性,因为它是只读的,因此需要更改Font属性。
为了大胆一点,我这样做:
this.btn_buttonBolding.Font = new Font(this.btn_buttonBolding.Font, FontStyle.Bold);
不是很理想,但它很有效。然而,我如何着手删除这种大胆的风格(一旦它已经大胆了)?
我努力寻找副本;我能找到的最接近的是这个,但它并不完全符合我的情况:Substract Flag From FontStyle (Toggling FontStyles) [C#]
这是如何设置它,但不删除它:Change a font programmatically
我是不是缺少了一个简单的字体构造函数来实现这一点?或者我只是缺少了一些更简单的东西?
3条答案
按热度按时间nkcskrwz1#
我知道这是一个有点老,但我面临着完全相同的问题,并提出了这个:
神奇的是“~”,它是按位NOT。(请参阅MSDN KB article "~Operator")
VB.NET版本:
ncecgwcz2#
FontStyle枚举包含5个不同的值。重置以前设置的值是FontStyle.Regular
常规普通文本。
粗体粗体文本。
斜体斜体文字。
下划线带下划线的文本。
删除线中间有一条线的文本。
它是一个按位枚举,其中Regular为0。因此,单独设置此值将重置所有其他标志
falq053o3#
试试看: