将文本框文本转换为Argb参数

时间:2010-04-15 18:06:01

标签: c# graphics

我一直在寻找像椭圆这样的对象,例如

        SolidBrush trnsRedBrush = new SolidBrush(Color.FromArgb(0x78FF0000));

我想通过将FromArgb的参数输入到表单上的文本框中,然后使用文本框设置Brush的颜色来进一步解决这个问题。如何将文本框的文本转换为FromArgb可用的参数?

2 个答案:

答案 0 :(得分:3)

someTextBox.Text = "AAFFBBDD";
int param = int.Parse(someTextBox.Text, NumberStyles.AllowHexSpecifier);
SolidBrush trnsRedBrush = new SolidBrush(Color.FromArgb(param));

你当然可以缩短它。

编辑:请记住,如果输入错误,可能会引发异常。有“TryParse”变体可让您根据自己的喜好处理情况。我不会提出具体的建议,因为它取决于背景和情况。

答案 1 :(得分:1)

如果您打算在文本框中输入十六进制值,为什么不这样做:

SolidBrush trnsRedBrush = new SolidBrush(Color.FromArgb(Convert.ToInt32(textBox.Text), 16));

编辑:必须先将值强制转换为int。 (糟糕!)