Salut à tous;
Je suis entrain de faire mon premier combobox avec les WPF et jai du mal à faire le Binding.
mon but est tous simplement de récupérer une liste des nom et l'afficher dans mon combobox, j'ai limpression que le binding passe c juste ke jarrive pas afficher la liste( le combobox contient autaut de nom ajouté mais au niveau d'affichage c tjrs blanc)
voila mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public partial class Window1 : Window { ObservableCollection<Login> ItemsTest = new ObservableCollection<Login>(); public List<String> nom { get; set; } public Login log = new Login(); public Window1() { InitializeComponent(); nom = log.listname(); combo.ItemsSource = nom; combo.DataContext = ItemsTest; } }
le code XAML correspondant :
voila la classe qui contient la liste des noms (Name) que je veux afficher:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <Window x:Class="testlogin.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" DataContext="{Binding RelativeSource={RelativeSource Self}}" Title="Connexion" Height="481" Width="635" ResizeMode="NoResize" ShowInTaskbar="False" WindowStartupLocation="CenterScreen"> <Grid> <ComboBox Height="23" Margin="0,13,46,0" Name="combo" VerticalAlignment="Top" HorizontalAlignment="Right" Width="164" ItemsSource="{Binding Path = ItemsTest}"> <ComboBox.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding name}" /> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox> </ComboBox> </Grid> </Window>
comme vous pouvez le constater jai ts déclarer public, en mettant le plus possible des get et set afin que ça soit accessible et je pourrais l'afficher mais sans progrès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 namespace testlogin { public class Login { public List<String> list{get;set;} public Login() { this.name = "bbbb"; Title2 = name; } public void setname(String name) { this.name = name; } public String name{get;set;} public string Title2 { get; set; } public List<String> listname() { list = new List<string>(); for (int i = 0; i < 20; i++) { name = "aaaa"; list.Add(name); } return list; } } }
merci pour tte aide.
si on ne fait pas ce qu'on aime, il faut qu'on aime ce qu'on fait![^^clinoeil3]
Partager