none
Bordure dans un DataGridView RRS feed

  • Question

  • Salut !
    J'ai tenté de le faire mais sans succès. Pas d'erreur mais pas d'effet non plus :

    Dim Bordure As New DataGridViewAdvancedBorderStyle
    Dim Monplaceholder As New DataGridViewAdvancedBorderStyle
    Bordure.All = DataGridViewAdvancedCellBorderStyle.Inset
    Monplaceholder.All = DataGridViewAdvancedCellBorderStyle.Inset
    Form1.DataGridView1.Item(1, 1).AdjustCellBorderStyle(Bordure, Monplaceholder,True, True, True, True)

    Quelqu'un peut m'aider ?

    mercredi 15 décembre 2010 10:14

Toutes les réponses

  • Bonjour,

    Je ne sais quel résultat vous voulez obtenir avec cette personnalisation mais il y a un bon exemple ici:

    http://msdn.microsoft.com/fr-fr/library/system.windows.forms.datagridviewadvancedborderstyle(v=VS.80).aspx


    Google est ton ami, MSDN aussi !
    jeudi 16 décembre 2010 14:40
  • Salut !

    Ce que je voudrais c'est encadrer une cellule particulière de manière à indiquer la cellule visée en faisant une bordure autour. J'ai mis le highlight sur transparent car se sont des cellules de couleurs. Je voudrais montrer la cellule pointée par une bordure. Le problème avec les exemples de MSDN est que tout est virtualisé alors ça complique beaucoup surtout pour les novices. Je doute qu'il faille une page entière de code pour faire une bordure.

    Merci quand même pour le message.

    jeudi 16 décembre 2010 22:11
  • Si j'ai bien compris tu veux éclairer la cellule active autrement qu'avec la propriété "SelectionBackColor" ??

    Voila une méthode simple pour dessiner une bordure à l'intérieur de ta cellule active:

    Private Sub DataGridView1_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles DataGridView1.CellPainting
    
    If e.RowIndex >= 0 Then
    
      If e.ColumnIndex >= 0 Then
    
       If Me.DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Selected = True Then
    
       Dim MonRectangle As New Rectangle(e.CellBounds.X, e.CellBounds.Y, e.CellBounds.Width - 2, e.CellBounds.Height - 2)
    
       e.Graphics.DrawRectangle(Pens.Red, MonRectangle)
    
       End If
    
      End If
    
    End If
    
    End Sub
    
    

    Attention toutefois à la couleur transparente, elle créé des soucis d'affichage. Je serais toi je définirais la propriétés SelectionBackColor avec la même valeur que BackColor.


    Google est ton ami, MSDN aussi !

    vendredi 17 décembre 2010 11:08
  • Ce ne fonctionne pas. Parfois le cadre apparaît une brève seconde puis disparaît. Sinon, je préfèrerais la cellule et non un cadre dans la cellule à cause des couleurs. il faudrait que je change de couleur en fonction du fond. Affectivement, pour la transparence on m'a dit cela.

    Merci quand même

    vendredi 17 décembre 2010 12:56