CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 2 of 2
  1. #1
    Join Date
    Sep 2008
    Posts
    90

    Question How to set borderstyle of a datagridview column at runtime (.Net Framework 4.0)?

    I have a readonly datagridview that is bound to a datasource. It has two columns. Now I want the first column to have no cell borderstyle; and the second one to have 'All' (i.e. all sides of the cell shall have a border) as cell borderstyle. Before binding the datagridview to the datasource, I'm writing something like mentioned below but it's taking no effect. Assume the column in question is named DisplayName.

    Code:
    With newStyle
    .Top = DataGridViewAdvancedCellBorderStyle.Single
     .Left = DataGridViewAdvancedCellBorderStyle.Single
     .Bottom = DataGridViewAdvancedCellBorderStyle.Single
     .Right = DataGridViewAdvancedCellBorderStyle.Single
    End With
    
    DisplayName.CellTemplate.AdjustCellBorderStyle(newStyle, newStyle, True, True, True, True)
    Please rectify or suggest a better way. Regards.

  2. #2
    Join Date
    Sep 2008
    Posts
    90

    Thumbs up Re: How to set borderstyle of a datagridview column at runtime (.Net Framework 4.0)?

    Code:
    Private Sub dgvLegends_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles dgvLegends.CellPainting
            'Draw custom cell borders.
            'If current column is DisplayName...
            If dgvLegends.Columns("DisplayName").Index = e.ColumnIndex AndAlso e.RowIndex >= 0 Then
                    Dim Brush As New SolidBrush(dgvLegends.ColumnHeadersDefaultCellStyle.BackColor)
                    e.Graphics.FillRectangle(Brush, e.CellBounds)
                    Brush.Dispose()
                    e.Paint(e.CellBounds, DataGridViewPaintParts.All And Not DataGridViewPaintParts.ContentBackground)
    
                    ControlPaint.DrawBorder(e.Graphics, e.CellBounds, dgvLegends.GridColor, 1, ButtonBorderStyle.Solid, dgvLegends.GridColor, 1, ButtonBorderStyle.Solid, dgvLegends.GridColor, 1, ButtonBorderStyle.Solid, dgvLegends.GridColor, 1, ButtonBorderStyle.Solid)
    
                e.Handled = True
            End If
        End Sub

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured