主要参考:https://docs.microsoft.com/zh-cn/dotnet/api/system.drawing.fontconverter?view=netframework-4.8
1.font>—-
var cvt = new FontConverter();
//用这个代替ToString()
string s = cvt.ConvertToString(f);
MessageBox.Show(s);//形如”Microsoft Sans Serif, 8.25pt”
//转回来
Font x = cvt.ConvertFromString(s) as Font;
label1.Font = x;
2.fontstyle>—
string myString = myFontStyle.ToString();
///
string myString = FontStyle.Bold.ToString();
FontStyle myFontStyle = (FontStyle)Enum.Parse(typeof(FontStyle), myString, false);
//最后的参数为是否忽略大小写
出现问题:
在click里面这样写
private void Signal_font_Click(object sender, EventArgs e)
{
System.ComponentModel.TypeConverter converter = System.ComponentModel.TypeDescriptor.GetConverter(typeof(Font));
DialogResult result = fontDialog1.ShowDialog();
if (result == DialogResult.OK)
{
string fontname1 = converter.ConvertToInvariantString(fontDialog1.Font);
string fontname2 = converter.ConvertToString(fontDialog1.Font);
Signal_font.Text = fontname1;
//Signal_font.Font = fontDialog1.Font;
}
}