梅花西飞博客

DevExpress WPF中的报表打印—Ⅰ

使用DevExpress WPF中的XtraReport进行数据打印。 新建项目 在VS2015中,创建如下结构的WPF项目:Github源码 其中XtraReportDemo文件按照如下方式新建,个人习惯直接创建Empty模板: Filed List 完成上述步骤后,对报表进行如下布局: Add Data Binding 至此我们就完成了报表的初步工作,接下来就为报表进行数据源绑定,具体的绑定步骤如下图片展示: 点击Finsh完成数据绑定。 完成数据源绑定后,调出Field List如下图所示: 然后拖过直接拖拽完成字段与字段显示位置的对应,其中:要想显示当前行的序号,可通过如下操作完成: 并可对Date字段进行格式化,具体格式化操作如下图所示: 如果几...
点我阅读更多...

WPF导出MasterDetail及所属子级详情至Excel

利用PrintHelper将WPF中的MasterDetail及所属子级详情导出至Excel。 TableView WPF的DataGrid导出Excel到指定文件夹很简单,直接利用如下代码即可实现功能。 using System.Diagnostics; using System.Windows; using DevExpress.Mvvm; using DevExpress.Mvvm.UI; using DevExpress.Xpf.Core; using DevExpress.Xpf.Grid; SaveFileDialogService saveFileDialogService = new SaveFileDialogService() { DefaultE...
点我阅读更多...

常见的0-1转换

利用程序将0变成1、1变成0,或者将1变成0、0变成1。 问题来源 在项目中,很多时候都会对当前数据的状态做变更。比如说:如果当前数据是已审核状态,那么就变更为审核状态;如果当前数据是审核状态,那么就变更为未审核状态。究其根源就是0、1的切换。 这里我们主要介绍实现上述问题的四种方法: 方法一 最初级、简单粗暴的方法就是if-else,实现代码如下: if(number == 1) return 0; else return 1; 方法二 初级+的方法就是三目运算符,实现代码如下: number == 1 ? 0 : 1; 方法三 初级++的方法利用数学公式,实现代码如下: (1 - number) 方法四 如果要展(kai)示(shi)技(zhuang)术(bi)的话...
点我阅读更多...

Python爬虫获取物流运输路线

利用Python爬虫批量获取物流(快递EMS)订单列表的运输路线,源码可在Github查看。 Python与爬虫 一直觉得爬虫技术很高大上,然后百度一番发现很多用Python写爬虫,自己以前也没有接触过Python,感觉这是一个学(zhuang)习(bi)的好机会。所以就用如下的测试数据开始了Python的爬虫学习,功能十分简单,代码丑陋: 所谓爬虫,就像利用一只程序员赋予动态思维的“蜘蛛”,首先随机放置于一个网络节点,这只蜘蛛会获取该网络节点中程序认为有用的信息,并将这些有用信息通过相关规则提取出来,形成我们具体想要的数据。一般该网络节点还会有其他网络节点的链接,所以这只“蜘蛛”就会开始新数据找寻之旅,从而获取源源不断的数据。 实现 下面就介绍我们的利用Python爬虫抓取物流...
点我阅读更多...

使用Linq筛选满足数组条件的List集合

使用Linq从List中删选出满足指定条件的元素,其中条件为:给定任意数组(string、与List元素同维数),只要List中的元素包含数组中给定元素,则认为此List的元素符合条件。 几周前在做项目的时候,需要实现一个功能:利用“长*宽*高”的这种形式搜索数据。需要达到的效果就是输入“num1*num2*num3”,其中num1、num2、num3的组合不确定,简单来说就是“num1*num2*num3”需要匹配“长*宽*高”、“长*高*宽”、“宽*长*高”,……,等6种组合。 案例 List<Size> strList = new List<Size>(); strList.Add(new Size { L = "225.00", W = "17...
点我阅读更多...