OVH Cloud OVH Cloud

ComboBox + HashTable ?

1 réponse
Avatar
Olivier
Bonjour,

ce code ne marche pas, pourquoi ?

Dim oGenre As New Hashtable
With oGenre
.Add(1, "Genre 1)
.Add(2, "Genre 2")
.Add(3, "Genre 3")
End With

ComboGenre.DataSource = oGenre
ComboGenre.DisplayMember = "Key"
ComboGenre.ValueMember = "Value"

J'ai une erreur :

System.ArgumentException was unhandled
Message="Complex DataBinding accepts as a data source either an IList or
an IListSource."

Merci
Olivier

1 réponse

Avatar
Ambassadeur Kosh
ben c'est clair.
tu bind pas une HashTable, point final.
meme pas un descendant de Dictionarybase

donc, si tu veux binder ta HashTable, fait toi un wrapper

class DictionaryWrapper : IList
{
public HashTableWrapper(IDictionary source)
{
this.source = source ;
}

private IDictionary source ;

public void Clear() { source.Clear() ; }
...
}


"Olivier" a écrit dans le message de news:

Bonjour,

ce code ne marche pas, pourquoi ?

Dim oGenre As New Hashtable
With oGenre
.Add(1, "Genre 1)
.Add(2, "Genre 2")
.Add(3, "Genre 3")
End With

ComboGenre.DataSource = oGenre
ComboGenre.DisplayMember = "Key"
ComboGenre.ValueMember = "Value"

J'ai une erreur :

System.ArgumentException was unhandled
Message="Complex DataBinding accepts as a data source either an IList or
an IListSource."

Merci
Olivier