0

如何更改 Windows Phone 中具有数据模板的列表框中的选定项目的背景颜色?

我已经看到它可以与 Setter Properties 一起使用。我会在哪里写它们?

谢谢。

代码

<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>
4

1 回答 1

1

您可以在 selectchanged 事件处理程序中的代码中执行此操作:

    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;
    }
于 2013-03-04T07:58:24.253 回答