Bonjour a tous ,
Je travaille en ce moment sur un user control wpf/C# qui sera utilisé dans une autre projet
Voici mes différentes classes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class MylistBoxItem { public MylistBoxItem(string a,string b,string c) { Field1 = a; Field2 = b; Field3 = c; } public string Field1 { get; set; } public string Field2 { get; set; } public string Field3 { get; set; } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public class MyViewModel { public ObservableCollection<MylistBoxItem> Items { get; set; } public MyViewModel() { Items = new ObservableCollection<MylistBoxItem>(); MylistBoxItem i = new MylistBoxItem("A","B","C"); MylistBoxItem i1 = new MylistBoxItem("A1", "B1", "C1"); Items.Add(i1); Items.Add(i); } }
Ma vue:
Et enfin l'initilisation de ma vue:
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 <UserControl x:Class="Genesyslab.Desktop.Modules.InteractionExtensionSample.PocMessages.view.MessageView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" mc:Ignorable="d" d:DesignHeight="434" d:DesignWidth="749" Width="{Binding RelativeSource= {RelativeSource FindAncestor, AncestorType={x:Type ListView}}, Path=ActualWidth}" Height="{Binding RelativeSource= {RelativeSource FindAncestor, AncestorType={x:Type ListView}}, Path=ActualHeight}" > <Grid x:Name="LayoutRoot" > <ListView Name="RecordListView" ItemsSource="{Binding Items}" Margin="0,25,0,248"> <ListView.View> <GridView> <GridView.Columns> <GridViewColumn Header="1" Width="Auto" DisplayMemberBinding="{Binding Path=Field1}" /> <GridViewColumn Header="2" Width="50" DisplayMemberBinding="{Binding Path=Field2}" /> <GridViewColumn Header="3" Width="100" DisplayMemberBinding="{Binding Path=Field3}" /> </GridView.Columns> </GridView> </ListView.View> </ListView> </Grid> </UserControl>
Mon souci c'est que le listview n'affiche pas les données mais le nom de la classe complete comme ceci:
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 public partial class MessageView : UserControl,IMessageView { public MessageView(IMessageViewModel messageViewModel) { InitializeComponent(); this.Model = messageViewModel; MyViewModel vm = new MyViewModel(); RecordListView.DataContext = vm; Width = Double.NaN; Height = Double.NaN; } public IMessageViewModel Model { get { return this.DataContext as IMessageViewModel; ; } set { this.DataContext = value; } } }
Merci d'avance pour votre aide
Partager