从 ItemTemplate 中更改 ListBoxItem 背景颜色?

发布于 2024-10-29 05:22:31 字数 138 浏览 1 评论 0原文

我已经搜索过,但一无所获,所以我才来问。

我找到了如何使用 ItemContainerStyle 更改 ListBoxItem 的背景和突出显示背景颜色。

但我想根据项目数据模板中的数据更改这两种颜色。

这可能吗?

I've searched and came up empty, therefore I'm asking.

I found how to change Background and Highlight Background color of ListBoxItem using ItemContainerStyle.

But I'd like to change these 2 colors based on data from within my DataTemplate for Items.

Is that possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

醉态萌生 2024-11-05 05:22:31

我认为可以用列表来完成,我已经使用数据网格完成了这种事情。
Christian Mosers 提供了一种很好且易于理解的方法来使用 DataGrid 实现此目的,您可以轻松地将他的数据模板用于 ListBoxItems:
http://www.wpftutorial.net/DataGrid.html#rowDetails

编辑

您是否尝试过在列表框资源中设置针对 ListBoxItems 的样式?

<ListBox.Resources>
   <Style TargetType="{x:Type ListBoxItem}">
      <Setter Property="Background" Value="Blue" />
   </Style>
</ListBox.Resources/>

这应该将所有项目的背景设置为蓝色

I think it would be possible to do it with a list, I've already done this kind of thing using Datagrids.
Christian Mosers offers a good and understandable way to do that with DataGrid, you can easily use his datatemplates for ListBoxItems:
http://www.wpftutorial.net/DataGrid.html#rowDetails

EDIT

Have you tried to set a style aiming for ListBoxItems in your listbox's resources?

<ListBox.Resources>
   <Style TargetType="{x:Type ListBoxItem}">
      <Setter Property="Background" Value="Blue" />
   </Style>
</ListBox.Resources/>

This should set all your items' bg to Blue

深爱成瘾 2024-11-05 05:22:31

后来我想出了一个解决方案。

唯一合理的方法是定义/重新定义列表框控件模板。

I came up with a solution later on.

The only reasonable way is to define/redefine Listbox Control template.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文