kikou93
Messages postés417Date d'inscriptionmardi 4 février 2014StatutMembreDernière intervention24 septembre 2018
-
15 oct. 2016 à 14:55
kikou93
Messages postés417Date d'inscriptionmardi 4 février 2014StatutMembreDernière intervention24 septembre 2018
-
15 oct. 2016 à 21:38
Bonjour,
je faisais des recherche sur comment modifier l'apparence de listview, j'ai trouvé le poste de karin.code sur comment modifier l'entête de la listview)
je voulais aussi modifier la couleur de Gridlines, le seul sujet que j'ai pu trouver et qui marche bien est dans :
http://vb-net123.blogspot.com/2012/11/change-listview-gridlines-color.html j'ai remarqué que dans la propriété de la listview du projet télécharger de se site il y a une fonction en plus (UseDefautGridlines = True/Fause), cette fonction n'existe pas normalement dans la listview et aussi je ne peut pas copier cette listview dans une nouveau projet même chose pour le code il y a des erreur qui š'affiché
esque il y a des manipulations à faire pour ajouter la foction UseDefautGridlines à la listview
Merci d'avance pour votre future aide
vb95
Messages postés3418Date d'inscriptionsamedi 11 janvier 2014StatutContributeurDernière intervention31 mai 2023165 Modifié par vb95 le 15/10/2016 à 17:24
Bonjour kikou73
Je suppose que cette nouvelle listview est un contrôle utilisateur qui utilise les propriétés de base de la listview de visual Studio et on y rajoute d'autres propriétés et méthodes !
J'ai voulu ouvrir la page de téléchargement du projet et j'ai eu de mauvaises surprises ( un soit-disant virus sur mon Pc)
Après vérification cela s'avère faux !
Je n'irai pas plus loin dans ce sujet car ad-fly ne me semble pas être un site sûr
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
c'est vrai, quand je clique sur Télécharger une page hors sujet s'ouvre, mais j'ai finalement pu le télécharger et je l'ai scanné avec un antivirus
j'ai met le projet dans ce lien :
http://www.cjoint.com/c/FJppH2Slm5J
vb95
Messages postés3418Date d'inscriptionsamedi 11 janvier 2014StatutContributeurDernière intervention31 mai 2023165
>
kikou93
Messages postés417Date d'inscriptionmardi 4 février 2014StatutMembreDernière intervention24 septembre 2018 Modifié par vb95 le 15/10/2016 à 18:12
salut kikou73
C'est bien ce que je pensais
voici le code du début de la classe ListviewEx
Public Class ListViewEx Inherits System.Windows.Forms.ListView
La première ligne est la Class ListviewEx
La seconde ligne indique que cette classe hérite des propriétés, méthodes et évènements de la ListView telle que nous la connaissons
Le code ensuite définit les nouvelles propriétés, méthodes et évènements utilisables avec cette nouvelle listview
Dans l'explorateur de projet Form1 est la form et ListviewEx.vb est le contrôle utilisateur
Je n'ai jamais utilisé ceci dans aucun projet et te renvoie aux moteurs de recherche pour trouver des infos sur les contrôles utilisateurs en VB Net .
A moins qu'une personne du site plus aguerri que moi dans ce domaine ne vienne t'apporter ses lumières .
Bonne fin de weekend
kikou93
Messages postés417Date d'inscriptionmardi 4 février 2014StatutMembreDernière intervention24 septembre 20181
>
vb95
Messages postés3418Date d'inscriptionsamedi 11 janvier 2014StatutContributeurDernière intervention31 mai 2023 15 oct. 2016 à 18:23
Salut vb95
Merci pour ton aide, je vais essayer de faire plus de recherche
Bonne fin de weekend a toi aussi
vb95
Messages postés3418Date d'inscriptionsamedi 11 janvier 2014StatutContributeurDernière intervention31 mai 2023165
>
kikou93
Messages postés417Date d'inscriptionmardi 4 février 2014StatutMembreDernière intervention24 septembre 2018 15 oct. 2016 à 18:26
kikou93
Messages postés417Date d'inscriptionmardi 4 février 2014StatutMembreDernière intervention24 septembre 20181
>
vb95
Messages postés3418Date d'inscriptionsamedi 11 janvier 2014StatutContributeurDernière intervention31 mai 2023 15 oct. 2016 à 20:32
Salut vb95
le lien que tu m'a donnée été vraiment très utile
Aprés avoir ajouté le Class Listview.vb qui se trouve dans le projet précédent http://www.cjoint.com/c/FJppH2Slm5J clique sur Déboguer -> Générer (Nom du projet), pour générer l'outil ListviewEx dans la liste des outils
Maintenant il suffit de le saisir et de le déplacer dans un des formulaires
on ajoute un bouton et une textbox
copier le code suivant dans Public Class Form1
Dim i As Integer = 0 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If i = 0 Then ListViewEx1.Columns.Add("Valeur " & 0, 0, HorizontalAlignment.Center) ListViewEx1.Items.Add("")
ListViewEx1.Columns.Add("Valeur " & 1, 100, HorizontalAlignment.Center) ListViewEx1.Items(0).SubItems.Add(TextBox1.Text) ListViewEx1.Width = ListViewEx1.Width + 5 ElseIf i > 0 Then ListViewEx1.Width = ListViewEx1.Width + 100 ListViewEx1.Columns.Add("Valeur " & i + 1, 100, HorizontalAlignment.Center) ListViewEx1.Items(0).SubItems.Add(TextBox1.Text) End If TextBox1.Clear() TextBox1.Focus() i = i + 1 ListViewEx1.OwnerDraw = True End Sub Private Sub ListViewEx1_DrawColumnHeader(ByVal sender As Object, ByVal e As System.Windows.Forms.DrawListViewColumnHeaderEventArgs) Handles ListViewEx1.DrawColumnHeader Try Dim RectPoints As New Point(e.Bounds.X, e.Bounds.Y) Dim RectSizes As New Size(New Point(e.Bounds.Width + 20, e.Bounds.Height)) Dim Rects As New Rectangle(RectPoints, RectSizes) e.Graphics.FillRectangle(Brushes.Black, Rects) 'couleur contour Dim RectPoint As New Point(e.Bounds.X + 1, e.Bounds.Y + 1) Dim RectSize As New Size(New Point(e.Bounds.Width - 1, e.Bounds.Height - 1)) Dim Rect As New Rectangle(RectPoint, RectSize) e.Graphics.FillRectangle(New SolidBrush(SystemColors.WindowFrame), Rect) 'couleur fond BackColor Finally End Try If CInt(e.ColumnIndex.ToString) = 0 Then ElseIf CInt(e.ColumnIndex.ToString) > 0 Then e.Graphics.DrawString("Valeur " & e.ColumnIndex.ToString, New Font("Georgia", 12, FontStyle.Bold), Brushes.Red, e.Bounds.X + 10, e.Bounds.Y + 3) End If End Sub Private Sub ListViewEx1_DrawItem(ByVal sender As Object, ByVal e As System.Windows.Forms.DrawListViewItemEventArgs) Handles ListViewEx1.DrawItem e.DrawDefault = False End Sub Private Sub ListViewEx1_ColumnWidthChanging(ByVal sender As Object, ByVal e As System.Windows.Forms.ColumnWidthChangingEventArgs) Handles ListViewEx1.ColumnWidthChanging e.Cancel = True e.NewWidth = DirectCast(sender, ListViewEx).Columns(e.ColumnIndex).Width End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ListViewEx1.View = View.Details ListViewEx1.GridLines = True ListViewEx1.GridLineColor = Color.Black ListViewEx1.UseDefaultGridLines = False ListViewEx1.Scrollable = False TextBox1.Focus() End Sub
On peut dire que ce code est une suite de celui de Karin.code il y a une chose a modifier dans ListviewEx.vb
dans cette partie :
Protected Overrides Sub OnDrawColumnHeader(ByVal e As System.Windows.Forms.DrawListViewColumnHeaderEventArgs) e.DrawDefault = False MyBase.OnDrawColumnHeader(e) End Sub
modifier e.DrawDefault = True par ça e.DrawDefault = False
Modifié par kikou93 le 15/10/2016 à 17:48
c'est vrai, quand je clique sur Télécharger une page hors sujet s'ouvre, mais j'ai finalement pu le télécharger et je l'ai scanné avec un antivirus
j'ai met le projet dans ce lien :
http://www.cjoint.com/c/FJppH2Slm5J
Modifié par vb95 le 15/10/2016 à 18:12
C'est bien ce que je pensais
voici le code du début de la classe ListviewEx
La première ligne est la Class ListviewEx
La seconde ligne indique que cette classe hérite des propriétés, méthodes et évènements de la ListView telle que nous la connaissons
Le code ensuite définit les nouvelles propriétés, méthodes et évènements utilisables avec cette nouvelle listview
Dans l'explorateur de projet Form1 est la form et ListviewEx.vb est le contrôle utilisateur
Je n'ai jamais utilisé ceci dans aucun projet et te renvoie aux moteurs de recherche pour trouver des infos sur les contrôles utilisateurs en VB Net .
A moins qu'une personne du site plus aguerri que moi dans ce domaine ne vienne t'apporter ses lumières .
Bonne fin de weekend
15 oct. 2016 à 18:23
Merci pour ton aide, je vais essayer de faire plus de recherche
Bonne fin de weekend a toi aussi
15 oct. 2016 à 18:26
http://plasserre.developpez.com/cours/vb-net/?page=poo1#LXV-C-2
15 oct. 2016 à 20:32
le lien que tu m'a donnée été vraiment très utile
Aprés avoir ajouté le Class Listview.vb qui se trouve dans le projet précédent http://www.cjoint.com/c/FJppH2Slm5J
clique sur Déboguer -> Générer (Nom du projet), pour générer l'outil ListviewEx dans la liste des outils
Maintenant il suffit de le saisir et de le déplacer dans un des formulaires
on ajoute un bouton et une textbox
copier le code suivant dans Public Class Form1
On peut dire que ce code est une suite de celui de Karin.code
il y a une chose a modifier dans ListviewEx.vb
dans cette partie :
modifier e.DrawDefault = True par ça e.DrawDefault = False
Merci vb95 pour ton aide précieuse