我想将 , 转换为object Color
,Int
将他放入crTextColor
成员中,所以我使用了方法myColor.ToArgb()
,但是颜色发生了变化,并显示了不同的颜色。
为什么会这样?
这是代码:
CHARFORMAT2 fmt = new CHARFORMAT2();
fmt.cbSize = Marshal.SizeOf(fmt);
// check if the text contains CFE_AUTOCOLOR effect
SendMessage(new HandleRef(this, Handle), EM_GETCHARFORMAT, SCF_SELECTION, ref fmt);
if ((fmt.dwEffects & CFE_AUTOCOLOR) == CFE_AUTOCOLOR)
{
fmt.dwEffects -= CFE_AUTOCOLOR;
}
fmt.dwMask = CFM_COLOR;
Color c = Color.Red;
fmt.crTextColor = c.ToArgb();
SendMessage(new HandleRef(this, Handle), EM_SETCHARFORMAT, SCF_SELECTION, ref fmt);