当前位置: 首页 > news >正文

雪亮工程建设网站界面/网络营销顾问招聘

雪亮工程建设网站界面,网络营销顾问招聘,网站中搜索关键词,福州移动网站建设上次有读者说我写得太简单,那么我们今天就写个难一点的吧!很多用户询问,如何如图1所示,在DataGridView控件的储存格中同时显示出图片与文字。图1DataGridView控件并没有内建任何功能来让您在同一个储存格中显示出图片与文字。解决…
上次有读者说我写得太简单,那么我们今天就写个难一点的吧!很多用户询问,如何如图1所示,在DataGridView控件的储存格中同时显示出图片与文字。
 
1
 
DataGridView控件并没有内建任何功能来让您在同一个储存格中显示出图片与文字。解决之道,是通过CellPaint等事件来完成自订的绘制作业。
 
以下我们建立一个衍生自DataGridViewTextBoxColumn的用户自订数据行类别,藉此于储存格内的文字旁边绘制一个图片。我们使用DataGridViewCellStyle.Padding属性来调整文字位置并重写Paint方法以便绘制一个图片:
 
Public Class TextAndImageColumn
    Inherits DataGridViewTextBoxColumn

    Private _imageValue As Image
    Private _imageSize As Size

    Public Sub New()
        MyBase.New()
        Me.CellTemplate = New TextAndImageCell
        Me.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
    End Sub

    Public Property Image() As Image
        Get
            Return Me._imageValue
        End Get
        Set(ByVal value As Image)
            Me._imageValue = value
            Me._imageSize = value.Size
            If Me.InheritedStyle IsNot Nothing Then
                Dim inheritedPadding As Padding = Me.InheritedStyle.Padding
                Me.DefaultCellStyle.Padding = New Padding( _
                  ImageSize.Width, inheritedPadding.Top, _
                  inheritedPadding.Right, inheritedPadding.Bottom)
            End If          
        End Set
    End Property

    Private ReadOnly Property TextAndImageCellTemplate() As TextAndImageCell
        Get
            Return CType(Me.CellTemplate, TextAndImageCell)
        End Get
    End Property

    Friend ReadOnly Property ImageSize() As Size
        Get
            Return ImageSize
        End Get
    End Property

    Public Overrides Function Clone() As Object
        Dim c As TextAndImageColumn = CType(MyBase.Clone, TextAndImageColumn)
        c._imageValue = Me._imageValue
        c._imageSize = Me.ImageSize
        Return c
    End Function
End Class

Public Class TextAndImageCell
    Inherits DataGridViewTextBoxCell

    Private imageValue As Image
    Private imageSize As Size

    Public Property Image() As Image
        Get
            If ((Me.OwningColumn Is Nothing) _
                      OrElse (Me.OwningTextAndImageColumn Is Nothing)) Then
                Return imageValue
            ElseIf (Me.imageValue IsNot Nothing) Then
                Return Me.imageValue
            Else
                Return Me.OwningTextAndImageColumn.Image
            End If
        End Get
        Set(ByVal value As Image)
            If Not Me.imageValue.Equals(value) Then
                Me.imageValue = value
                Me.imageSize = value.Size
                Dim inheritedPadding As Padding = Me.InheritedStyle.Padding
                Me.Style.Padding = New Padding( _
                  imageSize.Width, inheritedPadding.Top, _
                  inheritedPadding.Right, inheritedPadding.Bottom)
            End If
        End Set
    End Property

    Private ReadOnly Property OwningTextAndImageColumn() As TextAndImageColumn
        Get
            Return CType(Me.OwningColumn, TextAndImageColumn)
        End Get
    End Property

    Public Overrides Function Clone() As Object
        Dim c As TextAndImageCell = CType(MyBase.Clone, TextAndImageCell)
        c.imageValue = Me.imageValue
        c.imageSize = Me.imageSize
        Return c
    End Function

    Protected Overrides Sub Paint(ByVal graphics As Graphics, _
      ByVal clipBounds As Rectangle, ByVal cellBounds As Rectangle, _
      ByVal rowIndex As Integer, _
      ByVal cellState As DataGridViewElementStates, _
      ByVal value As Object, ByVal formattedValue As Object, _
      ByVal errorText As String, ByVal cellStyle As DataGridViewCellStyle, _
      ByVal advancedBorderStyle As DataGridViewAdvancedBorderStyle, _
      ByVal paintParts As DataGridViewPaintParts)

      MyBase.Paint(graphics, clipBounds, cellBounds, rowIndex, _
        cellState, value, formattedValue, errorText, cellStyle, _
        advancedBorderStyle, paintParts)
        If (Not (Me.Image) Is Nothing) Then
            Dim container As System.Drawing.Drawing2D.GraphicsContainer = _
              graphics.BeginContainer
            graphics.SetClip(cellBounds)
            graphics.DrawImageUnscaled(Me.Image, cellBounds.Location)
            graphics.EndContainer(container)
        End If
    End Sub
End Class
 
 
http://www.jmfq.cn/news/4984129.html

相关文章:

  • 做网站客服维护电话怎么打/百度竞价关键词怎么优化
  • 温州做真皮女鞋的网站有哪些/开鲁seo服务
  • 公司网站服务器托管/推广之家app下载
  • 新网站 蜘蛛/找客户的十大方法
  • 网站设计做微信发现界面/网站优化教程
  • 做免费网站教程/logo设计
  • wordpress可爱主题下载/seo站长
  • 学好网页设计与网站建设的意义/山东建站
  • 武汉营销型网站/查询百度关键词排名
  • 沈阳专业做网站/seo教程下载
  • 做网站数据库及相关配置/策划营销
  • 北京网站建设过程/seo哪里可以学
  • 做网站公司 深圳信科/seo关键字优化软件
  • 渭南 网站集约化建设/网站搜索引擎优化的方法
  • 邯郸网站建设效果/图们网络推广
  • 是先做网站还是先备案/苏州seo优化公司
  • 做的网站浏览器提示不安全问题/网站首页布局设计模板
  • 招标网站上的信息可靠吗/长沙百度关键词搜索
  • 设计素材网站 ps/百度seo灰色词排名代发
  • 泰安网络诈骗案件/seo技术教程
  • 北海哪里做网站/徐州seo外包公司
  • 做网站时空间的选择/seo精灵
  • 技术支持 上海做网站/如何优化网络
  • 做视频素材网站/seo指的是搜索引擎
  • 网站活动专题页面设计/抖音seo招商
  • 网站域名缴费/汕头网络营销公司
  • 建立网站的目录结构时最好的做法是/自己建网站详细流程
  • 第一环保网站建设项目环评公示/百度指数指的是什么
  • 什么叫电商怎么做电商/整站优化服务
  • 网站技术解决方案/大专网络营销专业好不好