今天在做项目的时候,UI妹子设计的一个界面上的列表 有隔行背景色不一致的变化以及在第一行显示列表的序号。

效果如下

C# WPF ListBox的Item隔行 背景颜色变化

两个UI显示实现方式是一样的,只是逻辑少许的不同

首先,ListBox使用ItemTemplate定义数据模板。

设置每个Item的最外层布局模板的背景 使用MultiBinding

思路是,binding两个参数 首先binding当前行的实体数据,在binding整体列表的数据,使用converter转换为背景色。

xaml代码如下

C# WPF ListBox的Item隔行 背景颜色变化

C# WPF ListBox的Item隔行 背景颜色变化

Converter代码

C# WPF ListBox的Item隔行 背景颜色变化

使用dynamic作为动态类 这里必须保证 你使用的数据源 的集合类 一定有IndexOf方法。

这个时候 ListBox 的Item背景的间隔变换就实现了。

那么实现数据源列表序号也就一样的思路能够解决了。

C# WPF ListBox的Item隔行 背景颜色变化

只是在converter中代码的区别。xaml中在指定的TextBlock中的Text属性做MultiBinding。以上就是今天想分享出来的点。

相关文章:

  • 2021-08-10
  • 2021-12-19
  • 2022-12-23
  • 2021-11-21
  • 2021-05-05
  • 2022-12-23
  • 2021-06-06
猜你喜欢
  • 2022-01-21
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-01
  • 2021-12-18
  • 2022-12-23
相关资源
相似解决方案