[VB.NET] Datagrid, DataGridTableStyle et objet collection

Datagrid, DataGridTableStyle et objet collection [VB.NET] - C#/.NET managed - Programmation

Marsh Posté le 07-01-2005 à 10:44:05    

Bonjour a tous
j'ai un winform avec un datagrid.
ce dernier est rempli a partir d'un objet collection heritant de Collections.CollectionBase et comprenant des objets dont les données affichées sont des propriétés.
L'affichage "basique" de la collection fonctionne.  
Mais je n'arrive pas a personnaliser l'affichage du datagrid via la collection tablestyle....
 
voici mon code
 
 

Code :
  1. Public Class Frm_Liste_Utilisateurs
  2.     Inherits System.Windows.Forms.Form
  3.     Private collUtilisateurs As Utilisateurs
  4. Private Sub Frm_Liste_Utilisateurs_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  5.         Dim oGrp_Utilisateurs As New Groupe_Utilisateurs()
  6.         oGrp_Utilisateurs.ID = 0
  7.         oGrp_Utilisateurs.Lister_Utilisateurs()
  8.         collUtilisateurs = oGrp_Utilisateurs.Utilisateurs
  9.         'Afficher les données dans le datagrid
  10.         DG_Utilisateurs.DataSource = collUtilisateurs
  11.         DG_Utilisateurs.ReadOnly = True
  12.         Dim oTableau As New DataGridTableStyle
  13.         oTableau.MappingName = "Utilisateur[]"
  14.         'Construire les différentes colonnes
  15.         Dim oColNom As New DataGridTextBoxColumn
  16.         oColNom.MappingName = "Nom"
  17.         oColNom.HeaderText = "Nom"
  18.         oTableau.GridColumnStyles.Add(oColNom)
  19.         Dim oColID As New DataGridTextBoxColumn
  20.         oColID.MappingName = "ID"
  21.         oColID.HeaderText = "ID"
  22.         oTableau.GridColumnStyles.Add(oColID)
  23.         'Affecter le tableau au datagrid
  24.         DG_Utilisateurs.TableStyles.Clear()
  25.         DG_Utilisateurs.TableStyles.Add(oTableau)
  26. End sub
  27. End class
  28. Public Class Utilisateurs
  29.         Inherits Collections.CollectionBase
  30.      
  31.         Public Sub Add(ByVal oUtilisateur As Utilisateur)
  32.             Me.List.Add(oUtilisateur)
  33.         End Sub
  34.         Public ReadOnly Property Items(ByVal Index As Integer) As Utilisateur
  35.             Get
  36.                 Return CType(Me.List(Index), Utilisateur)
  37.             End Get
  38.         End Property
  39.         Public Function GetItem(ByVal intID As Int16) As Utilisateur
  40.             'Renvoyer l'element de la collection correspondant au nom saisi
  41.             Dim oUtilisateur As Utilisateur
  42.             For Each oUtilisateur In Me.List
  43.                 If oUtilisateur.ID = intID Then
  44.                     GetItem = oUtilisateur
  45.                     Exit For
  46.                 End If
  47.             Next
  48.         End Function
  49.     End Class
  50.     Public Class Utilisateur
  51.         Implements IDisposable
  52.                Public Property ID() As Int16
  53.             Get
  54.                 ID = intID
  55.             End Get
  56.             Set(ByVal Value As Int16)
  57.                 intID = Value
  58.             End Set
  59.         End Property
  60.         Public Property Nom() As String
  61.             Get
  62.                 Nom = strNom
  63.             End Get
  64.             Set(ByVal Value As String)
  65.                 strNom = Value
  66.             End Set
  67.         End Property
  68.         Public Property Lib_Groupe() As String
  69.             Get
  70.                 Lib_Groupe = strLib_Grp
  71.             End Get
  72.             Set(ByVal Value As String)
  73.                 strLib_Grp = Value
  74.             End Set
  75.         End Property
  76.         Public Property Login() As String
  77.             Get
  78.                 Login = strLogin
  79.             End Get
  80.             Set(ByVal Value As String)
  81.                 strLogin = Value
  82.             End Set
  83.         End Property
  84.         Public PassWord As String
  85.         Public ID_Groupe As Int16
  86.         Private strNom As String
  87.         Private strLogin As String
  88.         Private strLib_Grp As String
  89.         Private intID As Int16
  90.        
  91.     End Class


 
et donc malgres tout le datagrid m'affiche toutes les propriétés de ma classe utilisateur alors qu'il ne devrait m'afficher que 2 colonnes.
 
Merci d'avance pour votre aide


Message édité par silimalaris le 07-01-2005 à 11:05:47
Reply

Marsh Posté le 07-01-2005 à 10:44:05   

Reply

Marsh Posté le 02-02-2005 à 11:04:05    

Je suis toujours sur le meme problème .... pas d'idées ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed