如何更改选择在Windows手机项目的背景颜色?(How can I change selected

2019-11-01 17:31发布

如何更改选择,在列表框中拥有的DataTemplate中的Windows Phone项目的背景颜色?

我已经看到,它可以与setter属性。 在那里,我把它们写?

谢谢。

<ListBox x:Name="listLocs" HorizontalAlignment="Left" Height="605" VerticalAlignment="Top" Width="250" SelectionChanged="listLocs_SelectionChanged" Margin="10,155,0,0" BorderBrush="#FF030042" BorderThickness="2" Foreground="#FF030042">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal">
                <StackPanel>
                    <Image Source="/Images/Pin2.png" Width="60"  Height="60" />
                </StackPanel>
                <StackPanel>
                    <StackPanel>
                        <TextBlock x:Name="txtName" Margin="10,0,0,0" Foreground="#FF030042"  FontSize="30" Text="{Binding Name}"/>
                    </StackPanel>
                    <StackPanel>
                        <TextBlock x:Name="txtDescription" Margin="10,0,0,0" Foreground="#FF030042" FontSize="20" Text="{Binding Description}"/>
                    </StackPanel>
                </StackPanel>
            </StackPanel>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>

Answer 1:

You can do that in code behind altough in selectchanged event handler:

    private void listLocs_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        ListBoxItem myitem = listLocs.SelectedItem as ListBoxItem;
       SolidColorBrush brush =  new SolidColorBrush(Color.FromArgb(255,255,0,0));
       myitem.Background = brush;
    }


文章来源: How can I change selected item's background color in Windows Phone?