wpf使用Popup封装数据筛选框--粉丝专栏

类似于DevExpress控件的功能

这是DevExpress的winform筛选样式,如下:

这是DevExpress的wpf筛选样式,如下: 

这是Excel的筛选样式,如下:

先看效果

本案例使用wpf原生控件封装,功能基本上都满足,只是颜色样式没有写,自己可以根据风格自定义,这个也不难,都是基础控件的样式,还可以在功能3里面自己拓展其他功能。

动态效果 

以上效果只对“测试姓名”一列进行刷选,其他列都是同理,移植即可。 

至于样式风格问题,可以参考之前的文章,对DataGrid控件进行美化,也都是原生开发

wpf中DataGrid的样式_wpf datagrid-CSDN博客

1.项目文件预览

总的来说,这个还是很简单的

2.UserControl1.xaml中的代码

<UserControl x:Class="WpfApp3.UserControl1"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:local="clr-namespace:WpfApp3"
             mc:Ignorable="d" 
             d:DesignHeight="300" d:DesignWidth="500" >
    <Grid >
        <TabControl   Width="200">
            <TabItem Header="功能1">
                <StackPanel>
                    <Button Width="50" Height="20" Margin="0,10" Content="倒序排序" Click="btnDescending"/>
                    <Button Width="50" Height="20" Content="正序排序" Click="btnAscending"/>
                </StackPanel>
            </TabItem>
            <TabItem Header="功能2">
                <StackPanel Width="200">
                    <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged"/>
                    <ListBox x:Name="lst" ItemsSource="{Binding }"   SelectionMode="Single"  >
                        <ListBox.ItemTemplate>
                            <DataTemplate>
                                <StackPanel>
                                    <CheckBox IsChecked="{Binding Chk}"  Content="{Binding Name}"  ></CheckBox>
                                </StackPanel>
                            </DataTemplate>
                        </ListBox.ItemTemplate>
                    </ListBox>
                    <StackPanel Orientation="Horizontal">
                        <Button Content="确定选择" Margin="10,0" Click="btnOK"/>
                        <Button Content="清除选择"  Click="btnClear"/>
                    </StackPanel>
                </StackPanel>
            </TabItem>
            <TabItem Header="功能3">
                <StackPanel>
                    <TextBlock>其他功能</TextBlock>
                </StackPanel>
            </TabItem>
        </TabControl>
    </Grid>
</UserControl>

本文源码收费,需要源码请联系我。

本文来源:

wpf使用Popup封装数据筛选框--粉丝专栏-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/317461.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【JaveWeb教程】(24) Mybatis入门之Mybatis配置与SQL语句编写 详细代码示例讲解(最全面)

目录 Mybatis入门前言1. 快速入门1.1 入门程序分析1.2 入门程序实现1.2.1 准备工作1.2.1.1 创建springboot工程1.2.1.2 数据准备 1.2.2 配置Mybatis1.2.3 编写SQL语句1.2.4 单元测试 1.3 解决SQL警告与提示 Mybatis入门 前言 在前面我们学习MySQL数据库时&#xff0c;都是利用…

微信小程序canvas画布实现元素缩放、移动、自由绘制源代码

微信小程序画布实现矩形元素缩放 效果图&#xff1a; 源代码&#xff1a; https://download.csdn.net/download/tl437002770/88722028 微信小程序画布实现矩形元素自由移动 效果图&#xff1a; 源代码&#xff1a; https://download.csdn.net/download/tl437002770/887220…

继续理解Nacos的CP和AP架构模型!

本篇文章延续文章“如何理解Nacos册CP和AP架构模型”&#xff0c;大家可以配套一起学习。 Nacos注册中心处理HTTP注册请求 在文章“如何理解Nacos册CP和AP架构模型”中已经提到过&#xff0c;Nacos注册中心用Restful API InstanceController的方法register()处理HTTP类型的注…

SpringBoot项目里用MultipartFile作为入参获取到的file为什么null

前言&#xff1a; 最近在项目中用到了Excel模板导入功能&#xff0c;但是在测试阶段用Postman测试时&#xff0c;通过Post请求&#xff0c;传到后端的File一直为null。其中前端传参和请求都没问题&#xff0c;后端的接参也没问题&#xff0c;问题出在过滤器的复用上。 问题场…

Docker五部曲之一:容器术语介绍

文章目录 前言背景基本术语容器镜像容器镜像格式容器引擎容器容器主机注册中心容器编排 进阶术语容器运行时镜像层标签存储库名称空间 参考 前言 本文内容翻译自参考文献。 背景 要理解容器术语&#xff0c;重要的是要精确地理解容器是什么。容器实际上是两个不同的东西。像…

Qt6安装教程

由于QT在5.14版本后不再有离线安装版本&#xff0c;均需要通过在线安装 1.下载exe安装包 打开Open Source Development | Open Source License | Qt&#xff0c;往下拉&#xff0c;找到红框所示的按钮 点进去后点击Download即可 2 安装 下载完成后可得到qt-unified-windows…

运算电路(1)——加法器

一、引言 微处理器是由一片或少数几片大规模集成电路组成的中央处理器。这些电路执行控制部件和算术逻辑部件的功能。微处理器能完成取指令、执行指令&#xff0c;以及与外界存储器和逻辑部件交换信息等操作&#xff0c;是微型计算机的运算控制部分。它可与存储器和外围电路芯片…

AI副业拆解:「一键解锁」告别熬夜赶PPT,AI大模型带你秒变高效演示达人!

今天&#xff0c;我注意到一条新闻报道&#xff0c;揭示了今年全球及国内科技企业正激烈竞争&#xff0c;纷纷借力大模型技术扩展各自的商业疆界。据统计&#xff0c;截至今年7月尾声&#xff0c;我国已累计推出了130个大模型项目&#xff0c;其中尤为显著的是&#xff0c;仅在…

三棋先手必胜证明

目录 创作原因 游戏规则 初始状态图 证明过程 先手必胜的证明 失败的博弈树&#xff08;三个多小时的成果&#xff09; 创作原因 这个棋不是网上流行的成三棋&#xff0c;我也不知道这个棋叫什么。由于这个棋是&#xff08;横竖斜&#xff09;连成三个就获胜&#xff0c;…

程序员副业之AI文库项目(超详细完整全流程)

引言 大家好&#xff0c;我是小黑&#xff0c;今天给大家介绍一个特别简单的项目&#xff0c;用AI辅助咱们来编写各种word&#xff0c;PPT等资料上传到百度文库、原创力、道客巴巴、csdn等平台赚取被动的睡后收益。 但要注意&#xff0c;只是辅助&#xff0c;即便是用AI辅助&…

APP自动化测试(超详细)

在实习过程中&#xff0c;我接触到了一些SDL安全提测的工作。原来我是学web端渗透比较多的&#xff0c;移动端这块基本没怎么试过手&#xff0c;结果刚开始一直踩坑&#xff0c;连抓包都抓不到(&#xff34;▽&#xff34;)。 下面记录下我遇到的部分问题和解决方法&#xff0…

C++学习笔记——私有继承、多重继承、类模板

目录 一、私有继承 二、多重继承 三、类模板 四、一个使用私有继承的示例代码 4.1代码 4.2输出结果 五、多重继承案列 六、类模板案例 C中的继承和模板是非常强大和灵活的特性&#xff0c;它们可以帮助我们实现代码复用、抽象和泛化等目标。本文将着重介绍私有继承、多…

对快速排序思想的进一步理解,分而治之,欧几里得算法(常用求最大公约数的方法)

自己找到的最优的快排的代码 快速排序 思想 分而治之使用欧几里得算法&#xff08;辗转相除法&#xff09;来求解一个应用题 假设有一块地&#xff0c;现在用这个同样大小的正方形来铺满&#xff0c;求所可用的最大的正方形地砖的面积 这两个方法放在一起是因为这个欧几里得要…

MAVROS的进一步理解

一、Mavros简介 顾名思义&#xff0c; mavros就是mavlinkros。mavros是PX4官方提供的一个运行于ros下收发mavlink消息的工具&#xff0c;利用mavros可以发送mavlink消息给飞控(可以控制飞机)&#xff0c;并且可以从飞控中接受数据(例如&#xff1a;飞控的位置速度 IMU数据等等…

30 树的定义

树的定义 树的度&#xff1f;叶节点&#xff1f; 注意&#xff1a;k为叶节点 孩子/双亲/子孙/祖先 树的高度&#xff1f; 有序树 森林 树的一些操作&#xff1a; 粗略的框架代码&#xff1a; 省略。。。 小结&#xff1a; 树是线性表的扩展

全新加密叙事,以Solmash为代表的 LaunchPad 平台如何为用户赋能?

铭文市场的火爆带来“Fair Launch”这种全新的代币启动方式&#xff0c;Fair Launch 的特点在于其为所有人参与 Launch 带来了公平的机会&#xff0c;所有链上玩家们都需要通过先到先得的方式 Mint 资产&#xff0c;VC 在 Fair Launch 中几乎没有话语权&#xff0c;不同的投资者…

基于蚁群算法的TSP问题建模求解(Python)

基于蚁群算法的TSP问题建模求解 一、蚁群优化算法&#xff08;Ant Colony Optimization&#xff0c;ACO&#xff09;1.1 蚁群算法的起源——“双桥实验”1.2 蚁群优化算法思想1.3 蚁群算法应用于求解组合优化问题 二、基于蚁群算法的TSP问题建模求解2.1 旅行商问题&#xff08;…

软件测试|web自动化测试神器playwright教程(三十八)

简介 在我们使用selenium时&#xff0c;我们可以获取元素的属性&#xff0c;元素的文本值&#xff0c;以及输入框的内容等&#xff0c;作为比selenium更为强大的web自动化测试神器&#xff0c;playwright也可以实现对元素属性&#xff0c;文本值和输入框内容的抓取&#xff0c…

Mysql事务的处理

1、事务&#xff0c;就是一组命令的操作。 不过这一组命令&#xff0c;我们有时候需要使用手动提交&#xff1b; 1、使用这组命令可以查询出来现在的提交方式&#xff1a;自动提交&#xff08;就是命令输入&#xff0c;点击enter后&#xff0c;会不会直接对表格产生修改&#x…

重温经典struts1之自定义全局异常处理类处理异常以及<exeception>标签的配置

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 前言 前面的文章&#xff0c;我们学习了&#xff0c;Action类中调用Service&#xff0c;通过try…catch代码块&#xff0c;catch自定义异常类&#xff0c;通过ActionMessage…