WPF效果第一百八十六篇之又玩ListBox

大周末的接着上一篇玩耍TreeView,这二天又再次去玩耍ListBox;毕竟是我的最爱,没办法就喜欢玩耍他;闲话也不多扯了,直接看咱们最终效果:

3314325ba706482b387ca1d435d520c1.gif

2、原来一直ItemTemplate,这次直接ListBoxItem的Template:

<Setter Property="Template">
    <Setter.Value>
        <ControlTemplate TargetType="{x:Type ListBoxItem}">
            <Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" 
                                BorderThickness="{TemplateBinding BorderThickness}"
                                CornerRadius="4"
                                Background="{TemplateBinding Background}"
                                Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="*"/>
                        <RowDefinition Height="2.5*"/>
                    </Grid.RowDefinitions>
                    <Grid Margin="10,10,10,0">
                        <TextBlock Text="{Binding RelativeSource={RelativeSource Mode=TemplatedParent},Path=(ItemsControl.AlternationIndex),Converter={StaticResource AlternationIndexToNumberConverter}}"/>
                        <Rectangle Height="15" Width="15" HorizontalAlignment="Right" Fill="#89909C" Stroke="#E3E5E8"/>
                    </Grid>
                    <WrapPanel Orientation="Vertical" Grid.Row="1" Margin="10,10,10,0">
                        <TextBlock Text="9/16"/>
                        <ProgressBar Width="80" Margin="0,6,0,0" Value="{Binding Percent}"
                   Foreground="{Binding Status,Converter={StaticResource StatusToBrushConverter}}"/>
                        <TextBlock Text="{Binding Percent,StringFormat={}{0}%}" Margin="0,6,0,0"/>
                    </WrapPanel>
                </Grid>
            </Border>
        </ControlTemplate>
    </Setter.Value>
</Setter>

3、关于绑定索引需要前台绑定一下

<ListBox ItemsSource="{Binding PortsList}" AlternationCount="{Binding PortsList.Count}" Style="{StaticResource PortsListListBox}"/>

4、关于ItemsPanel

<ItemsPanelTemplate x:Key="CommonItemsPanelTemplate">
    <WrapPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>

最终简单的效果先这样吧c58503d537b93c00369d3dfa65461962.png;以后有时间的话,可以再去摸索一下更复杂的效果c7e1256ae8cbe9258676726a64e1040e.png;编程不息、Bug不止、无Bug、无生活558558942fb7dcdb1c949aa0acb27e61.png;改bug的冷静、编码的激情、完成后的喜悦、挖坑的激动 、填坑的兴奋;这也许就是屌丝程序员的乐趣吧;今天就到这里吧;希望自己有动力一步一步坚持下去;生命不息,代码不止;大家抽空可以看看今天分享的效果,有好的意见和想法,可以在留言板随意留言;我看到后会第一时间回复大家,多谢大家的一直默默的关注和支持!如果觉得不错,那就伸出您的小手点个赞并关注一下,多谢您的支持!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值