`
hududanyzd
  • 浏览: 815759 次
文章分类
社区版块
存档分类
最新评论

C#中给Label控件设置BackgroundImage属性

 
阅读更多

在C#中,默认情况下是无法给Label设置BackgroundImage属性的,只有Image这个属性,但是在某些特殊的情况下我们又需要设置Label的BackgroundImage属性,因此我们必须对label控件加以改造。Label是继承自Control类的,而Control类是有BackgroundImage这个属性的,Label也有这个属性,只是在VS中我们无法看到而已,微软做了下处理,不希望我们在属性窗口中能够直接设置它。实际上它有很多属性在属性面板中没有显示而已,如下图示:



因此我们可以对Label控件代码稍加改写即可,代码如下图所示,我们写个控件继承Label,重写它的2个方法即可。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing;

namespace Tempus.Component
{
public partial class LabelEx2 : Label
{


public LabelEx2()
{

}

protected override void OnPaintBackground(PaintEventArgs e)
{
return;
}

protected override void OnPaint(PaintEventArgs e)
{

//判断BackGroundImage是否为空
if (this.BackgroundImage != null)
{

e.Graphics.DrawImage(this.BackgroundImage, new System.Drawing.Rectangle(0, 0, this.Width, this.Height),
this.Location.X, this.Location.Y, this.Width, this.Height,
System.Drawing.GraphicsUnit.Pixel);


}

e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
SolidBrush drawBrush = new SolidBrush(this.ForeColor);
e.Graphics.DrawString(this.Text, this.Font, drawBrush, new System.Drawing.Rectangle(0, 0, this.Width, this.Height));
//base.OnPaint(e);
}

}
}

调用时设置这个Label控件的BackgroundImage属性即可,Demo代码如下:

string strWineDetail1 = Application.StartupPath + "\\Resources\\" + "WineDetail1.jpg";
lblWineInfo.BackgroundImage = Image.FromFile(strWineDetail1);









分享到:
评论

相关推荐

    c# 最完整的控件属性说明

    ### C#中最完整的控件属性说明 #### 一、窗体 在C#中,窗体是用户界面的基础,提供了大量的属性供开发者调整其外观和行为。以下是一些常用的窗体属性及其详细解释: 1. **Name属性**: - **功能**:此属性用于...

    C#控件常用属性方法

    - **BackgroundImage属性**:用于获取或设置窗体的背景图像。 - **Enabled属性**:用于获取或设置一个值,指示控件是否可以对用户交互作出响应。 - **Font属性**:用于获取或设置控件显示的文本的字体。 - **...

    C#控件详细说明

    14. **BackColor和BackgroundImage属性**:分别设置窗体的背景颜色和图像。 15. **Enabled属性**:控制窗体是否接受用户交互,禁用时用户无法与之互动。 16. **Font属性**:设置窗体上文本的字体样式。 17. **...

    C#控件及常用属性整理

    #### BackgroundImage属性 - **功能**: 获取或设置窗体的背景图像。 - **作用**: 为窗体添加背景图片,提升界面美观度。 #### Enabled属性 - **功能**: 获取或设置一个值,指示控件是否响应用户输入。 - **作用**: ...

    C#控件大全 全面的C#控件讲解

    19. **BackgroundImage属性**:用于获取窗体的背景图像。 20. **Enabled属性**:用于获取一个值,该值指示控件是否可用。 21. **Font属性**:用于获取控件的字体。 22. **ForeColor属性**:用于获取控件的前景色。 ...

    C#_Windows窗体控件

    窗体的基本属性如Name、BackColor、BackgroundImage、FormBorderStyle等决定了窗体的外观和行为。例如,Name属性用于唯一标识窗体,Text属性定义了显示在标题栏上的文本,而FormBorderStyle属性则可以设置窗体的边框...

    C#自定义控件之-winform美化

    3. 图片背景:为窗体设置背景图片,可以使用Form的BackgroundImage属性。同时,可以通过调整BackgroundImageLayout属性来控制图片的显示方式,如拉伸、平铺等。 4. 控件样式:通过修改控件的外观属性,如ForeColor...

    .Net中的C#的所有控件集

    15. `BackColor`和`BackgroundImage`属性:设置窗体的背景颜色和图像。 16. `Enabled`属性:控制窗体是否可交互。 17. `Font`属性:设置窗体内文本的字体样式。 18. `ForeColor`属性:设置窗体的前景色。 19. `...

    C#控件属性方法

    15. **BackgroundImage 属性**:允许设置控件的背景图片。 16. **Enabled 属性**:控制控件是否对用户交互作出响应,如果设为false,控件将变为灰色,不可点击。 17. **Font 属性**:设置控件中文本的字体样式。 ...

    C#控件属性事件大全

    - **BackgroundImage 属性**:获取或设置窗体的背景图像。 - **Enabled 属性**:获取或设置一个值,指示控件是否可以对用户交互作出响应,默认值为 true。 #### 二、LABEL 控件 - **功能**:用于显示静态文本。 -...

    C#常见控件的使用

    此外,还有允许拖放数据的AllowDrop属性、背景颜色BackColor、背景图片BackgroundImage、焦点处理的CanFocus和Focused属性、字体Font、前景色ForeColor、尺寸和位置属性如Height、Width、Location、Size等,以及控件...

    C#属性事件控件参考大全

    Label控件 **2.1 常用属性** - **Text属性**:设置或获取控件的文本。 - **AutoSize属性**:设置控件根据文本自动调整大小。 - **Font属性**:设置控件的字体样式。 - **ForeColor属性**:设置控件的前景色。 - *...

    c#自制万年历控件

    - **背景图片**:如果用户希望添加背景图片,我们需要加载图片并将其设置为控件的BackgroundImage,同时处理好图片的拉伸和缩放以适应控件大小。 2. **日期计算**: - **日历算法**:万年历需要处理从公元1年到...

    C#控件大全

    (19)BackgroundImage属性:用来获取或设置窗体的背景图像。 (20)Enabled 属性:用来获取或设置一个值,该值指示控件是否可以对用户交互作出响应。如果控件可 以对用户交互作出响应,则为 true;否则为false。...

    c#控件说明

    15. `BackgroundImage`属性:设置窗体的背景图片。 16. `Enabled`属性:控制控件是否可以响应用户交互。 17. `Font`属性:设置控件的字体样式。 18. `ForeColor`属性:设置控件的前景色。 19. `IsMdiChild`属性:...

    C#_控件属性事件大全

    - **BackgroundImage属性**:设置窗体的背景图片。 - **Enabled属性**:控制窗体是否可以接收用户的输入。 - **Font属性**:设置窗体的字体样式。 - **IsMdiChild属性**:指示该窗体是否为MDI子窗体。 **1.2 事件**...

    C#控件一览表

    ### C# 控件知识点详解 #### 一、控件基础属性...以上是 C# 中一些常用控件的基础属性和方法的详细介绍。这些控件及其属性和方法构成了 C# GUI 编程的基础,了解并熟练掌握它们对于开发高质量的图形用户界面至关重要。

    C#编程控件工具。。。

    - **BackgroundImage属性**:设置窗体的背景图像。 - **Enabled属性**:获取或设置一个布尔值,表示控件是否可用。 - **Font属性**:获取或设置控件文本的字体样式。 - **ForeColor属性**:设置控件的前景色。 - **...

    c#控件设计整理

    - `BackColor`和`BackgroundImage`:设置窗体的背景颜色和图片。 - `Enabled`:控制窗体是否可交互。 - `Font`:设定窗体内文本的字体。 - `ForeColor`:设置窗体的前景色。 - `IsMdiChild`和`IsMdiContainer`...

Global site tag (gtag.js) - Google Analytics