来源:http://www.codeproject.com/KB/grid/Datagridview_BackImage.aspx
VB.NET
Imports System.ComponentModel Imports System.Drawing
Public Class UserDataGridView Inherits Windows.Forms.DataGridView Private m_Image As Image
Public Sub New() 'Me.m_Image = Drawing.Image.FromFile("C:\BG.jpg") End Sub
Protected Overrides Sub PaintBackground(ByVal graphics As Graphics, ByVal clipBounds As Rectangle, ByVal gridBounds As Rectangle) MyBase.PaintBackground(graphics, clipBounds, gridBounds) graphics.DrawImage(Me.m_Image, gridBounds) End Sub
'添加图片属性 Public Property BackImage() As Drawing.Image Get Return Me.m_Image End Get Set(ByVal value As Drawing.Image) Me.m_Image = value MyBase.Refresh() End Set End Property End Class
C#
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace UserDataGridView { public partial class UserDataGridView : DataGridView { private Image m_Image;
public UserDataGridView() { InitializeComponent(); //this.m_Image = Image.FromFile("C:\\BG.jpg"); }
/// <summary>重写PaintBackground</summary> protected override void PaintBackground(Graphics graphics, Rectangle clipBounds, Rectangle gridBounds) { base.PaintBackground(graphics, clipBounds, gridBounds); graphics.DrawImage(this.m_Image, gridBounds); }
/// <summary>设置背景图片</summary> public Image BackImage { get { return this.m_Image; } set { this.m_Image = value; base.Refresh(); // 重新加载 } } } }
|
请发表评论