Entrées distinctes et DataTable

24 novembre 2009 par Boris Laisser une réponse »

Vous avez souvent eût un DataSet dont vous vouliez considérer une colonne pour alimenter une liste déroulante pour réaliser, par exemple, un filtre ? Prenons pour exemple la DataTable MyDataTable ci-dessous. Si vous définissez directement MyDataTable comme source de votre DropDownList, en précisant comme DataValueField et DataTextField la colonne ‘Etiquette », vous risquez d’apercevoir un doublon pour  »Visual Studio ».

Auteur Article Etiquette
Julien Doillon MonoTouch
 Wilfried Woivré Trucs et astuces : Le débuggeur Visual Studio Visual Studio
 Thomas Levesque Implémenter un objet dynamique personnalisé  .NET Futures
 Thomas Lebrun Exemples sur l’extensibilité des designers Silverlight/WPF… Visual Studio

Pour contourner ce problème, utilisez une DataView intermédiaire, et la fonction ToTable, dont le deuxième argument à True vous assurera l’unicité des éléments pour les colonnes précisées (ici, uniquement Etiquette) :

  1. Public Function GetDropDownListTable() As DataTable
  2.    Dim TempDv As New DataView
  3.    Dim Columns(0) As String
  4.    Columns(0) = "Etiquette"
  5.    TempDv.Table = MyDataTable
  6.    TempDv.Sort = "Etiquette desc"
  7.    Return TempDv.ToTable("Etiquettes", True, Columns)
  8. End Function
Publicité

Laisser un commentaire