Bonjour tout le monde

Petite question à deux balles :

j'ai une classe :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
 [XmlRoot]
 public class Deperdition :
[XmlAttribute]
        public string Piece { get; set; }
 [XmlAttribute]
        public bool IsRegrouper{ get; set; }
 [XmlAttribute]
        public double Deperditions { get; set; }
 
etc ...

mon XML :
je ne met pas toutes les infos exprès j'en ai beaucoup
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Piece= "Logement T01" Local="Salon" IsFiltrer="True" Deperditions= "1000"
Piece= "Logement T01" Local="Cuisine"  IsFiltrer="True" Deperditions= "1000"
Piece= "Logement T01" Local="Salle de bain"  IsFiltrer="True" Deperditions= "1000"
Piece= "Logement T02" Local="Salon"  IsFiltrer="True" Deperditions= "1000"
Piece= "Logement T02" Local="Cuisine"  IsFiltrer="True" Deperditions= "1000"
Piece= "Logement T02" Local="Salle de bain"  IsFiltrer="True" Deperditions= "1000"
j'ai une observable collection de ma classe que me récupère tout.

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
 
public ObservableCollection<Deperdition> ListDeperdition
        {
            get
            {
                return _ListDeperdition;
            }
            set
            {
                if (value != _ListDeperdition)
                {
                    _ListDeperdition = value;
 
                    OnPropertyChanged("ListDeperdition");
 
                }
 
            }
        }
j'aurais voulu récupérer dans une list ou observablecollection les info suivantes : Piece en distinct() et IsFilter
Je ne vois pas trop comment faire afin de pouvoir filtrer ma listview via :

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
36
37
38
39
40
41
42
43
44
45
46
47
 
  <Style TargetType="{x:Type ListViewItem}">
                                    <Setter Property="Visibility" Value="{Binding Path=IsFiltrer, Converter={StaticResource VisibilityConverter}}"/>
</Style>
 
et : 
 
  <Expander>
                                <StackPanel Margin="10,4,0,0">
                                    <ScrollViewer Grid.Row="1" Margin="0,5,0,30"
                                          HorizontalScrollBarVisibility="Disabled" 
                                          VerticalScrollBarVisibility="Auto">
                                        <StackPanel>
                                            <CheckBox Content="(Selectionnez tout)" IsChecked="{Binding IsSelectionnezToutPiece, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
                                            <ListView  Background="{x:Null}" BorderThickness="0" FontSize="10" Margin="0"
                                       ItemsSource="{Binding ListLocalFilter, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, IsAsync=True}" IsSynchronizedWithCurrentItem="True" Width="auto" Height="100">
                                            <ListView.ItemContainerStyle>
                                                <Style TargetType="ListViewItem">
                                                    <Setter Property="HorizontalContentAlignment" Value="Left" />
                                                </Style>
                                            </ListView.ItemContainerStyle>
                                            <ListView.View>
                                                <GridView ColumnHeaderContainerStyle="{StaticResource MasqueHeader}">
                                                    <GridViewColumn >
                                                        <GridViewColumn.CellTemplate >
                                                            <DataTemplate>
                                                                <CheckBox IsChecked="{Binding IsFiltrer}" VerticalContentAlignment="Center" >
                                                                    <TextBlock Text="{Binding Local}" Margin="0,-2,0,0"/>
                                                                </CheckBox>
                                                            </DataTemplate>
                                                        </GridViewColumn.CellTemplate>
                                                    </GridViewColumn>
                                                </GridView>
                                            </ListView.View>
                                        </ListView>
                                        </StackPanel>
                                    </ScrollViewer>
                                    <StackPanel>
                                        <Button ToolTip="Enregistrer les modifications" Command="{Binding SaveFiltrePieceCommand}" BorderBrush="{x:Null}" Background="{x:Null}" Margin="3" Width="16" Height="16" HorizontalAlignment="Right">
                                            <TextBlock>
                    <Image Source="/Apeiron;component/Utils/Images/Ok.png" Height="12" Width="12" Stretch="Fill" RenderOptions.BitmapScalingMode="HighQuality"/>
                                            </TextBlock>
                                        </Button>
                                        <Button/>
                                    </StackPanel>
                                </StackPanel>
                            </Expander>

Pouvez vous me donnez un petit coup de mail s'il vous plait cela serait pas de refus