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) :
-
Public Function GetDropDownListTable() As DataTable
-
Dim TempDv As New DataView
-
Dim Columns(0) As String
-
Columns(0) = "Etiquette"
-
TempDv.Table = MyDataTable
-
TempDv.Sort = "Etiquette desc"
-
Return TempDv.ToTable("Etiquettes", True, Columns)
-
End Function
