gpt4 book ai didi

windows-phone-7 - 如何设置ListBox项的前景色

转载 作者:行者123 更新时间:2023-12-04 06:52:14 24 4
gpt4 key购买 nike

我在 WP7 应用程序页面中有一个 ListBox,我将其绑定(bind)到名为 Location 的自定义对象的集合(列表)。在该对象中有一个名为 WMO 的字段,当 ListBox 加载时我想做的是设置任何绑定(bind)列表框项目的前景色,该项目的值与我的默认值相同......但我似乎无法正常工作我读过或用谷歌搜索过的任何东西都没有帮助。

我知道列表中的项目绑定(bind)到数据源,但我想获得该项目的物理表示并更改前景色....只是不知道我该怎么做,所以如果有人可以帮助我将不胜感激。

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="0,0,0,0" >
<ScrollViewer Height="615" HorizontalAlignment="Left" Margin="5,5,5,5" Name="scrollViewer1" VerticalAlignment="Top">
<ListBox Name="lbxSavedLocs" Height="615" FontSize="22" HorizontalAlignment="Left" VerticalAlignment="Top" Width="470" SelectionChanged="lbxSavedLocs_SelectionChanged" Loaded="lbxSavedLocs_Loaded">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Width="380" Text="{Binding SiteName}" HorizontalAlignment="Left" />
<TextBlock Width="90" Text="{Binding WMO}" HorizontalAlignment="Center" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</ScrollViewer>
</Grid>
private void lbxSavedLocs_Loaded(object sender, RoutedEventArgs e)
{
//Populate the listbox from our saved locations.
lbxSavedLocs.ItemsSource = gl.savedLocs.OrderBy(x => x.SiteName);

foreach (Location itm in lbxSavedLocs.Items)
{
if (loc.WMO == gl.defaultWMO)
{
//GET AN "INVALID CAST" EXCEPTION HERE:
((ListBoxItem)itm).Foreground = new SolidColorBrush(Color.FromArgb(255, 255, 255, 255));
}
}

//Hopefully this produces a redraw of the ListBox.
lbxSavedLocs.InvalidateArrange();
}

最佳答案

试试这个:

选项 1:

 ListBoxItem lbi1 = (ListBoxItem)(listBox.ItemContainerGenerator.ContainerFromIndex(0));
lbi1.Foreground= new SolidColorBrush(Color.FromArgb(100, 45, 23, 45));

选项 2:

ListBoxItem lbi2 = (ListBoxItem)(listBox.ItemContainerGenerator.ContainerFromItem(listBox.Items.SelectedItem));

lbi2.Foreground= new SolidColorBrush(Colors.Red);

关于windows-phone-7 - 如何设置ListBox项的前景色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4953891/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com