|
12 | 12 | d:DesignWidth="400">
|
13 | 13 |
|
14 | 14 | <Control.Resources>
|
15 |
| - <DataTemplate x:Key="NormalMessageTemplate" x:DataType="models:SignalMessage"> |
16 |
| - <local:Message></local:Message> |
17 |
| - </DataTemplate> |
18 |
| - <DataTemplate x:Key="UnreadMarkerTemplate"> |
19 |
| - <local:UnreadMarker /> |
20 |
| - </DataTemplate> |
| 15 | + <Style TargetType="ListBoxItem" x:Key="NormalMessageStyle"> |
| 16 | + <Setter Property="Template"> |
| 17 | + <Setter.Value> |
| 18 | + <ControlTemplate TargetType="ListBoxItem"> |
| 19 | + <local:Message x:Name="ListBoxItemContent" /> |
| 20 | + </ControlTemplate> |
| 21 | + </Setter.Value> |
| 22 | + </Setter> |
| 23 | + </Style> |
| 24 | + <Style TargetType="ListBoxItem" x:Key="UnreadMarkerStyle"> |
| 25 | + <Setter Property="Template"> |
| 26 | + <Setter.Value> |
| 27 | + <ControlTemplate TargetType="ListBoxItem"> |
| 28 | + <local:UnreadMarker /> |
| 29 | + </ControlTemplate> |
| 30 | + </Setter.Value> |
| 31 | + </Setter> |
| 32 | + </Style> |
| 33 | + <Style TargetType="ListBoxItem" x:Key="IdentityKeyChangeStyle"> |
| 34 | + <Setter Property="Template"> |
| 35 | + <Setter.Value> |
| 36 | + <ControlTemplate TargetType="ListBoxItem"> |
| 37 | + <local:IdentityKeyChangeMessage /> |
| 38 | + </ControlTemplate> |
| 39 | + </Setter.Value> |
| 40 | + </Setter> |
| 41 | + </Style> |
21 | 42 | <DataTemplate x:Key="IdentityKeyChangeTemplate">
|
22 | 43 | <local:IdentityKeyChangeMessage />
|
23 | 44 | </DataTemplate>
|
24 |
| - <local:MessageTemplateSelector x:Key="MessageDataTemplateSelector" NormalMessage="{StaticResource NormalMessageTemplate}" UnreadMarker="{StaticResource UnreadMarkerTemplate}" IdentityKeyChangeMessage="{StaticResource IdentityKeyChangeTemplate}" /> |
| 45 | + <local:MessageStyleSelector x:Key="MessageDataStyleSelector" NormalMessage="{StaticResource NormalMessageStyle}" UnreadMarker="{StaticResource UnreadMarkerStyle}" IdentityKeyChangeMessage="{StaticResource IdentityKeyChangeStyle}" /> |
25 | 46 | </Control.Resources>
|
26 | 47 | <Grid Background="White">
|
27 | 48 | <Grid.RowDefinitions>
|
|
36 | 57 | <TextBlock Name="Username" IsTextSelectionEnabled="True" HorizontalAlignment="Center" Text="{x:Bind ThreadUsername, Mode=OneWay}" Visibility="{x:Bind ThreadUsernameVisibility, Mode=OneWay}" />
|
37 | 58 | </StackPanel>
|
38 | 59 | </Border>
|
39 |
| - <ListBox Grid.Row="1" Name="ConversationItemsControl" VirtualizingStackPanel.VirtualizationMode="Recycling" Background="White" ScrollViewer.VerticalScrollBarVisibility="Visible" Padding="0 0 15 0"> <!--ItemTemplateSelector="{StaticResource MessageDataTemplateSelector}"--> |
40 |
| - <ListBox.ItemContainerStyle> |
41 |
| - <Style TargetType="ListBoxItem"> |
42 |
| - <Setter Property="Template"> |
43 |
| - <Setter.Value> |
44 |
| - <ControlTemplate TargetType="ListBoxItem"> |
45 |
| - <local:Message x:Name="ListBoxItemContent" /> |
46 |
| - </ControlTemplate> |
47 |
| - </Setter.Value> |
48 |
| - </Setter> |
49 |
| - </Style> |
50 |
| - </ListBox.ItemContainerStyle> |
51 |
| - </ListBox> |
| 60 | + <ListBox Grid.Row="1" Name="ConversationItemsControl" VirtualizingStackPanel.VirtualizationMode="Recycling" Background="White" ScrollViewer.VerticalScrollBarVisibility="Visible" Padding="0 0 15 0" ItemContainerStyleSelector="{StaticResource MessageDataStyleSelector}" /> |
52 | 61 | <Grid Grid.Row="2" BorderBrush="{ThemeResource TextBoxBorderThemeBrush}" BorderThickness="0,1,0,0">
|
53 | 62 | <Grid.ColumnDefinitions>
|
54 | 63 | <ColumnDefinition Width="*"/>
|
|
0 commit comments