热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【原创】自定义分页控件WPF

目录起因思路需求部分代码效果图分页控件外观总结DEMO下载说明:代码已封装成库,有需要者私我邮箱bohekejivip.qq.com起因

目录

起因

思路

需求

部分代码

效果图

分页控件外观

总结

DEMO下载




说明:代码已封装成库,有需要者私我邮箱    bohekeji@vip.qq.com



起因

开使用DataGrid数据表过程中,不管是视觉感受还是用户体验上,再或者是大批量数据使用场景中,大量的单页数据用户体验很不好,于是想开发一个可以分页的控件。


思路

刚开始在网上各种搜DEMO,希望从中获取些有用的东西,好在还是从中了解到了大概的实现思路。


需求

最基础的就是分页功能咯。但是,虽然作为程序猿,我对美观一直坚持不懈的追求,所以不仅要实现,还有美观。


部分代码

///

/// 显示每页记录数字符串列表/// 例:10,20,30/// public static readonly DependencyProperty PageSizeListProperty =DependencyProperty.Register("PageSizeList", typeof(string), typeof(PagingDataGrid), new UIPropertyMetadata(null, (s, e) => {PagingDataGrid dp = s as PagingDataGrid;if (dp.PageSizeItemsSource == null) {dp.PageSizeItemsSource = new List();}if (dp.PageSizeItemsSource != null) {List strs = e.NewValue.ToString().Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList();dp.PageSizeItemsSource.Clear();strs.ForEach(c => {dp.PageSizeItemsSource.Add(Convert.ToInt32(c));});}}));protected IList PageSizeItemsSource {get { return (IList)GetValue(PageSizeItemsSourceProperty); }set { SetValue(PageSizeItemsSourceProperty, value); }}/// /// 显示每页记录数集合/// protected static readonly DependencyProperty PageSizeItemsSourceProperty =DependencyProperty.Register("PageSizeItemsSource", typeof(IList), typeof(PagingDataGrid), new UIPropertyMetadata(new List { 5, 10, 20, 30, 50 }));

效果图


分页控件外观

 


总结

总体实现实用性和适用性算是达标,但是原本还想做个导入导出功能,导出支持当前页和所有页,但是个人项目比较紧张,实在忙不过来,等候续吧。


DEMO下载


PagingDataGrid【MintYouth】.zip-C#文档类资源-CSDN下载博客原文:https://blog.csdn.net/weixin_38351681/article更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/weixin_38351681/50021380



推荐阅读
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • 本文详细介绍了使用C#实现Word模版打印的方案。包括添加COM引用、新建Word操作类、开启Word进程、加载模版文件等步骤。通过该方案可以实现C#对Word文档的打印功能。 ... [详细]
  • 本文讨论了在ASP中创建RazorFunctions.cshtml文件时出现的问题,即ASP.global_asax不存在于命名空间ASP中。文章提供了解决该问题的代码示例,并详细解释了代码中涉及的关键概念,如HttpContext、Request和RouteData等。通过阅读本文,读者可以了解如何解决该问题并理解相关的ASP概念。 ... [详细]
  • 2019独角兽企业重金招聘Python工程师标准
    本文介绍了2019独角兽企业对Python工程师的招聘标准,包括在AndroidManifest中定义meta-data的方法和获取meta-data值的代码。同时提供了获取meta-data值的具体实现方法。转载文章链接:https://my.oschina.net/u/244918/blog/685127 ... [详细]
  • C#DataGridView控件中数据导出到Excel方法一:usingSystem;usingSystem.Collections.Generic;usingSys ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • 本文介绍了Java高并发程序设计中线程安全的概念与synchronized关键字的使用。通过一个计数器的例子,演示了多线程同时对变量进行累加操作时可能出现的问题。最终值会小于预期的原因是因为两个线程同时对变量进行写入时,其中一个线程的结果会覆盖另一个线程的结果。为了解决这个问题,可以使用synchronized关键字来保证线程安全。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 本文介绍了Python字典视图对象的示例和用法。通过对示例代码的解释,展示了字典视图对象的基本操作和特点。字典视图对象可以通过迭代或转换为列表来获取字典的键或值。同时,字典视图对象也是动态的,可以反映字典的变化。通过学习字典视图对象的用法,可以更好地理解和处理字典数据。 ... [详细]
  • 广度优先遍历(BFS)算法的概述、代码实现和应用
    本文介绍了广度优先遍历(BFS)算法的概述、邻接矩阵和邻接表的代码实现,并讨论了BFS在求解最短路径或最短步数问题上的应用。以LeetCode中的934.最短的桥为例,详细阐述了BFS的具体思路和代码实现。最后,推荐了一些相关的BFS算法题目供大家练习。 ... [详细]
  • 感谢大家对IT十八掌大数据的支持,今天的作业如下:1.实践PreparedStament的CRUD操作。2.对比Statement和PreparedStatement的大批量操作耗时?(1 ... [详细]
  • 开发笔记:Spark Java API 之 CountVectorizer
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了SparkJavaAPI之CountVectorizer相关的知识,希望对你有一定的参考价值。 ... [详细]
author-avatar
觅树知音
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有