wpf 如何在ListView中显示两个选定成员的成员?

mwecs4sa  于 2022-12-14  发布在  其他
关注(0)|答案(1)|浏览(136)

我的大脑被融化了,我是一个C#新手,我似乎找不到最好的方法来做这件事。

<ListView HorizontalAlignment="Left" Height="360" Margin="66,55,0,0" 
              VerticalAlignment="Top" Width="623" ItemsSource="{Binding COSPVM}">
                <ListView.View>
                    <GridView x:Name="GridView1">
                        <GridViewColumn Header="Time Stamp" DisplayMemberBinding= "{Binding Path=TimeStamp}"/>
                        <GridViewColumn Header="COSP %" DisplayMemberBinding= "{Binding Path=COSP}"/>
                        
                    </GridView>
                </ListView.View>
            </ListView>

上面是我的一个有两列的ListView的XAML代码,我想重点关注的是显示日期“时间戳”列的那个。成员在列表COSPVM中。

<GridViewColumn Header="Time Stamp" DisplayMemberBinding= "{Binding Path=TimeStamp}"/>

正如标题所暗示的,我希望用户能够在ListView中选择两个日期,并让ListView只显示这两个日期之间的项。最好的方法是什么?是创建一个组合框,还是让用户手动输入一些日期,然后以某种方式将其数据绑定到我的后台代码中?我很难理解这一点。
我曾经考虑过做一个ComboBox --单独的,只包含日期,你可以从中选择一两个日期,让它将这些日期DataBind到后面的代码中,然后用某种方法删除之前和之后的日期。尽管如此,即使这样,我也很难理解。

xeufq47z

xeufq47z1#

这看起来更像是一个固执己见的设计问题,但我会给予它我最好的机会。
通常,当按日期列过滤网格时,用户界面将在网格上方提供两个文本框(通常每个文本框都有一个日历工具),供用户选择过滤器的开始和结束日期,以及一个“过滤器”按钮。
如果我没理解错的话,您不希望用户能够选择任意日期,而是希望在网格中指定日期。
在这种情况下,我将使用2个附加列,其中包含作为开始/结束的单选按钮和一个用于应用过滤器的按钮,如下所示:

相关问题