如何设置单词的背景颜色?

时间:2012-12-14 14:15:26

标签: c# forms background-color picturebox

我在表单中有一个pictureBox。在那个pictureBox的中间,我已经放置了所选照片的​​名称。 现在,我想为所选名称的背景着色。

我该怎么做?

3 个答案:

答案 0 :(得分:8)

我不确定你的意思,但PictureBox的内容是一张图片。如果您只想显示文本,请使用标签。如果您希望它具有特定的背景颜色,请将其BackColor属性设置为您想要的颜色。

示例:

private void Form1_Load(object sender, EventArgs e)
{
    var label = new Label {BackColor = Color.White};
    Controls.Add(label);
}

编辑:

我允许自己重复使用上面Sampath的部分示例,使其适应用户的评论。

void pictureBox1_Paint(object sender, PaintEventArgs e)
{
    using (var font = new Font("Arial", 14))
    {
        const string pictureName = "Picture.jpg";
        var textPosition = new Point(10, 10);
        //Drawing logic begins here.
        var size = e.Graphics.MeasureString(pictureName, font);
        var rect = new RectangleF(textPosition.X, textPosition.Y, size.Width, size.Height);
        //Filling a rectangle before drawing the string.
        e.Graphics.FillRectangle(Brushes.Red, rect);
        e.Graphics.DrawString(pictureName, font, Brushes.Green, textPosition);
    }
}

答案 1 :(得分:1)

您可以尝试以下示例。

只需在表单中添加图片框,然后为Paint事件添加事件处理程序:

您想在PictureBox中使用画图事件。您从 e.Graphics 获得图形参考,然后使用示例中的 DrawString()

private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
    using (Font myFont = new Font("Arial", 14))
    {
        e.Graphics.DrawString("Hello .NET Guide!", myFont, Brushes.Green, new Point(2, 2));
    }
}

希望这会对你有所帮助。

答案 2 :(得分:0)

您的问题可能与更改控件的背景颜色属性一样简单,您可以在属性窗口中更改该属性。