so i have created a listview with grouping and i want a image that are binded to that group 's expander how do i do that
xaml for the expander
Code:
<Expander.Background>
<ImageBrush ImageSource="{Binding billed}"/>
</Expander.Background>
xaml list view
Code:
<ListView x:Name="hjuldata" Background="#FF303030" BorderBrush="#FF303030" Foreground="#FF00B408">
<ListView.View>
<GridView>
<GridView.ColumnHeaderContainerStyle>
<Style TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="Background" Value="Black" />
<Setter Property="Foreground" Value="#FFEAEAEA " />
<Setter Property="FontWeight" Value="Bold" />
</Style>
</GridView.ColumnHeaderContainerStyle>
<GridViewColumn Header=" " DisplayMemberBinding="{Binding billed}" />
<GridViewColumn Header="Model" Width="120" DisplayMemberBinding="{Binding Model}" />
<GridViewColumn Header="Årgang" Width="120" DisplayMemberBinding="{Binding Årgang}" />
<GridViewColumn Header="Krydsmål" Width="130" DisplayMemberBinding="{Binding Krydsmål}" />
<GridViewColumn Header="ET" Width="50" DisplayMemberBinding="{Binding ET}" />
<GridViewColumn Header="Centerhul" Width="120" DisplayMemberBinding="{Binding centerhul}" />
<GridViewColumn Header="Hjulbolter" Width="120" DisplayMemberBinding="{Binding bolter}" />
</GridView>
</ListView.View>
<ListView.GroupStyle>
<GroupStyle>
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Expander IsExpanded="True" >
<Expander.Background>
<ImageBrush ImageSource="{Binding billed}"/>
</Expander.Background>
<Expander.Header>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding billed}" Stretch="Fill" ToolTip="Add tooltip"/>
<TextBlock Text="{Binding Name}" FontWeight="Bold" Foreground="#FFEAEAEA" FontSize="22" VerticalAlignment="Bottom"/>
<TextBlock Text="{Binding ItemCount}" FontSize="22" Foreground="Green" FontWeight="Bold" FontStyle="Italic" Margin="10,0,0,0" VerticalAlignment="Bottom" />
<TextBlock Text=" Antal" FontSize="22" Foreground="#FFEAEAEA" FontStyle="Italic" VerticalAlignment="Bottom" />
</StackPanel>
</Expander.Header>
<ItemsPresenter />
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</GroupStyle.ContainerStyle>
</GroupStyle>
</ListView.GroupStyle>
</ListView>
c# code
Code:
public enum Mærke { Alfa_Romeo, Audi };
public class biler
{
public string billed { get; set; }
public string Model { get; set; }
public string Type { get; set; }
public string Årgang { get; set; }
public string Krydsmål { get; set; }
public int ET { get; set; }
public string centerhul { get; set; }
public string bolter { get; set; }
public string hjul { get; set; }
public Mærke mærke { get; set; }
}
List<biler> items = new List<biler>();
items.Add(new biler() { Model = "166", Årgang = "98-06", Krydsmål = "5x108", ET = 41, centerhul = "58,1", bolter = "B12x1,25", mærke = Mærke.Alfa_Romeo});
items.Add(new biler() { Model = "146", Årgang = "94-", mærke = Mærke.Alfa_Romeo });
items.Add(new biler() { Model = "100", Årgang = "83-90", mærke = Mærke.Audi });
hjuldata.ItemsSource = items;
CollectionView view = (CollectionView)CollectionViewSource.GetDefaultView(hjuldata.ItemsSource);
PropertyGroupDescription groupDescription = new PropertyGroupDescription("mærke");
view.GroupDescriptions.Add(groupDescription);
}