J'ai lié une datatable à une liste déroulante et défini un dataTemplate dans itemTemplate.i peut voir les valeurs souhaitées dans la liste déroulante de la liste déroulante, ce que je vois dans le selectedItem est System.Data.DataRowView
voici mes codes:Comment lier une datable à une liste déroulante modifiable wpf: selectedItem montrant System.Data.DataRowView
<ComboBox Margin="128,139,123,0" Name="cmbEmail" Height="23" VerticalAlignment="Top" TabIndex="1" ToolTip="enter the email you signed up with here" IsEditable="True" IsSynchronizedWithCurrentItem="True" ItemsSource="{Binding}">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Path=username}"/>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
le code est derrière ceci:
if (con != null)
{
con.Open();
//users table has columns id | username | pass
SQLiteCommand cmd = new SQLiteCommand("select * from users", con);
SQLiteDataAdapter da = new SQLiteDataAdapter(cmd);
userdt = new DataTable("users");
da.Fill(userdt);
cmbEmail.DataContext = userdt;
}
Je cherchais quelque chose comme SelectedValueTemplate ou SelectedItemTemplate faire le même genre de templating de données, mais Je n'en ai trouvé aucun.
Je voudrais demander si je fais quelque chose de mal ou c'est un problème connu pour la liaison combobox?
Si quelque chose ne va pas dans mon code, veuillez me diriger dans la bonne direction.
merci pour la lecture de ce
Je sais que c'est et vieille question, mais il serait plus facile de le lire lorsque vous fusionner vos réponses. – Tafari