最近在和DHL物流公司(应该是个大公司)对接,取运单号的方式是调用对方提供的API,简单说,就是我们传一些发货地址和客户信息,要发的货物等,对方返回一个运单号和物流面单(就是我们淘宝快递上的面单)。...技术点如下 1, 将DataTable导出至Pdf 2, DataTable中包含图片,也要能导出 3, Pdf类库,字体的引入(居然需要引用字体的绝对路径,想不通) 下面分别讲解... 1, 这点就是直接创建iTextSharp中的PdfDataTable对象,直接映射即可。...(baseFont, fontSize); return font; } 下面是调用的代码,仅供参考。...前2联是DHL返回的Pdf文件,第3联是我本地生成的Pdf文件,合并成一个完整的发货面单 ?
一、DataGrid控件详解WPF中的DataGrid是一个非常强大和灵活的控件,它可用于展示和编辑数据。...以下是一些常用的DataGrid控件属性和方法:属性:AutoGenerateColumns:指定是否自动生成列。ItemsSource:指定数据源。IsReadOnly:指定是否只读。...DataGrid还有许多其他的属性和方法,可以根据需求进行使用。1.属性介绍WPF中DataGrid控件的常见属性如下:AutoGenerateColumns:是否自动生成列,默认为true。...2.常用场景WPF中DataGrid控件常用场景包括以下几个方面:数据展示:DataGrid控件可以方便地展示数据表格,特别是当数据量比较大时,使用DataGrid可以快速地进行数据查看和筛选。...数据导入导出:DataGrid控件可以支持数据的导入和导出,可以将数据快速地导入到DataGrid中进行展示,也可以将DataGrid中的数据导出到其他文件格式中,方便数据的共享和使用。
在这个.NET组件的介绍系列中,受到了很多园友的支持,一些园友(如:数据之巅、 [秦时明月]等等这些大神 )也给我提出了对应的建议,我正在努力去改正,有不足之处还望大家多多包涵。...对于项目开发中使用到打印的地方会非常多,在.NET项目中,选择打印的方式比较多,例如原始的IE网页打印、水晶报表、JS插件实现打印、导出文档打印,以及今天提到的使用itextSharp组件实现PDF打印等等...一.itextSharp组件概述: 1.iText的是PDF库,它允许你创建,调整,检查和维护的可移植文档格式文件(PDF): (1).基于从XML文件或数据库中的数据生成文件和报告...iText所使用的的Java,.NET,Android和GAE开发人员加强与PDF功能的应用程序。iTextSharp的是.NET端口。 ...以上是对itextSharp组件的一些类和方法的简单介绍,对于表格,单元格等等类的介绍就不再继续,有兴趣的可以自己查看源代码信息。
3.2、方式二还是以 “Wifi 固定器” 中的代码为例:也就是直接给需要的对象的 PropertyChanged 事件附加处理方法(方法里的具体代码和方式一中类似),当然,这个对象的类型也必须是直接或间接实现了...我向 ChatGPT 讨教了一下 WPF 中的行为 Behavior使用通用附加属性来减少 WPF 元素自定义样式的多余代码几十款 WPF 控件 - UI 库,总有一款适合你WPF 用户控件分享之边上带输入框的圆圈分享一个...WPF 气泡弹框WPF 表单验证之 INotifyDataErrorlnfo 接口的使用示例[翻译] WPF 中用户控件 DataContext/Binding 和依赖属性的问题OxyPlot 导出图片及...WPF 元素导出为图片的方法让 WPF 的 RadioButton 支持再次点击取消选中的功能WPF DataGrid 如何将被选中行带到视野中WPF 触屏事件后触发鼠标事件的问题及 DataGrid...误触问题WPF DataGrid 通过自定义表头模拟首行固定WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换【翻译】WPF 中附加行为的介绍 Introduction
C++/CLI中创建WPF项目的方法 `C++/CLI`下创建WPF项目的方法 C++/CLI下创建WPF项目的方法 Visual C++中创建WPF项目的方法 由于WPF不仅仅支持C#/VB开发,还支持其他语言...,比如: C++、F#等开发,于是大白我最近花了点时间摸索了一下,本文主要介绍C++/CLI下创建WPF项目的方法。...我使用的开发环境是: Win10 x64 + Visual Studio 2019 (16.6.1版本)。 今天我们需要使用C++/CLI,算是C++的一个子集吧。...此时,MyComponent.cpp中的代码如下: #include "MyComponent.h" 为了正确引用到 WPF 中的各种库,我们还需要加入 WPF中 3 个核心的 dll,操作方法是: 右键点击项目中的...美中不足的是后面一直有个命令行窗口。
持续更新 自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,就目前想到的先整理于此,如果再想到...关于 Excel Pdf Word Html Csv 的处理 : Magicodes.IE:导入导出通用库,支持Dto导入导出、模板导出、花式导出以及动态导出,支持Excel、Csv、Word、Pdf和...Autofac:最流行的依赖注入和IOC框架,轻量且高性能,对项目代码几乎无任何侵入性。 PostSharp:实现静态AOP横切关注点,使用简单,功能强大,对目标拦截的方法无需任何改动。...JavaScriptSerializer:微软默认针对WEB开发者提供的JSON格式化器。 iTextSharp、PDFsharp 和 PDF.NET:通过.NET处理和生成PDF文档的组件。...SparrowToolkit:一套WPF图表控件集,支持绘制动态曲线,可绘制示波器、CPU使用率和波形。DynamicDataDisplay:微软开源的WPF动态曲线图,线图、气泡图和热力图。
前言 由于在MVC项目中需要使用PDF,所以自己抽空也来看看itext,以便于丰富自己的知识吧。在此也简单的记录一下,说不定以后可能还用的到。...在此您可以下载你想使用的版本http://sourceforge.net/projects/itextsharp/files/itextsharp/。于是我就下载了现在最新的版本5.4.0。 ?...下面我就在Asp.Net Mvc 3.0Web项目中创建最简单的Hello PDF了。当然在项目中要首先引用dll文件。...、主题、关键字、作者、创建程序,但以下产品信息将始终被添加: iTextSharp (或者iTextSharp的引用)和创建时间(实际上这两种方法是自动调用的)。 ...,看效果 Process.Start("D:\\Hello.pdf"); 查看生成的PDF的文档吧 实例代码
前言 这篇文章是WPF框架系列的最后一篇,在这里我想阐述一下我对框架设计的理解。...我上一篇文章《我们都知道,如何不被淘汰。》中谈到,开发人员分为程序员和代码工人两种。 这两种开发人员的技术实力差距是巨大的;如果框架设计时不考虑团队成员的技术实力,那么框架很难发挥出最高战力。...isFilter) { return isFilter; } } return isFilter; }); 这上面简短的代码中,我们使用了...在代码中可以看到,我们为Filter赋值了一个匿名委托;这个委托有一个入参和一个返回值;其中,入参是我们表格中的行的DataContext,返回值是Bool类型,表示这行在表格中是否显示。...,和表格的一些基础配置,比如是否开启过滤,是否开启分页等等。
这太过复杂了,这还是有些麻烦,在WPF中实现起来反而简单很多。...VisualState我在ControlTemplate多写了80行代码,因为没有用上VisualTransition所以这个ControlTemplate有一些Bug,反正只是用来验证添加的两个VisualState...使用同样的原理为DataGrid的行添加ChechBox DataGrid也可以用同样的原理为每一行添加CheckBox,只不过DataGrid的Template会负责很多。...,它用于控制DataGrid行和列的Header是否显示,因为我在每一行的开头放了CheckBox(就是使用上面定义的RowHeaderTempalte),所以定一只只显示Column的Header的话相当于隐藏了这个...如果有更复杂的需求,我建议买商业的控件,毕竟DataGrid的自定义可以很复杂,花时间不如花钱。 6.
我曾经自己过日志工具,将日志写在服务器的某个文本文件中,但总是因为文本写入异常出现各种各样的错误。...log4net的效率很高,而且我使用过程中再也没发生过写日志的异常,用了log4net腰不酸了,腿不疼了,一口气上5楼不费劲。 ...是我用过的做好用的缩图工具。使用.net自带的图片处理类实现缩图功能,总是感觉缩出来的图片有些毛刺。下面附上代码。...读取pdf的工具有PDFBox和iTextSharp,有网友推荐使用iTextSharp,我在项目中使用的是PDFBox,个人感觉这个工具的效率很低。...PDFBox是一个将java源码编译成.net的dll文件的工具(看到此处的时候我也感到很神奇)。以下地址不太详细的介绍了PDFBox和iTextSharp的使用。
WPF DataGrid 如何将被选中行带到视野中 目录 前言 准备工作 方法一 方法二 总结 独立观察员 2021 年 12 月 11 日 前言 在 WPF 开发中,显示表格一般使用 DataGrid...使用的还是之前用过的 DataGrid 的 Demo 程序(在《WPF DataGrid 通过自定义表头模拟首行固定》和《WPF 触屏事件后触发鼠标事件的问题及 DataGrid 误触问题》中用过),加了一个可以填写要选中的行号的文本框...方法一 这个方法是参考《【翻译】WPF 中附加行为的介绍 Introduction to Attached Behaviors in WPF》文章中的将 TreeViewItem(树状列表项)带到视野中的方法...,我稍微改造了一下,使其同时支持 DataGridRow 和 TreeViewItem,并且之后如果有其它受支持的类型也可以方便地扩展。...方法二则是需要在 ViewModel 和页面后台编写代码,通过事件来触发相关操作,不过可以支持行虚拟化。大家可以依据实际情况选择使用,如果有更好的方法,欢迎交流。
引言 上一篇中 WPF --- 重写圆角DataGrid样式,因新产品UI需要,重写了一下微软 「WPF」 原生的 DataGrid 的样式,包含如下内容: 基础设置,一些基本背景色,字体颜色等。...重写过程中,遇到了两个问题: 如何获取 「WPF」 原生的 DataGrid 的样式? 滚动条样式中,如何固定滚动条长度? 本篇文章分享一下这两个问题的解决办法。...解决方法 我来分别分享一下我遇到的这两个问题。 问题1 第一个,如何获取 「WPF」 原生的 DataGrid 的样式?...Studio 一起安装的,平常我也使用 Blend ,做一些自定义控件和动画效果等,是一个非常专业的工具。...「第三步:」 我这里选择,生成到当前文件 Window.Resources 中且带 Key 的样式,然后他就会生成原生的样式代码。如下所示,这里代码太多,折叠展示。
这一点微软的高级解决方案是使用RMS,能够设置每个用户的打开权限,是否打印等,要求必须是域内,而且只管理Office文件的权限,对txt,pdf就没办法了。...如果是文本需要转换为PDF,我们可以使用iTextSharp这个组件,对于纯文本,注意的是源文件中没有设置字体之类的,需要在转换成PDF时指定字体,否则对于中文可能由于没有设置字体而转换不出来。...的功能,在转换后,我们可以进一步使用ITextSharp对pdf进行加工,比较常见的添加水印功能。...这个在以前是不现实的,现在有了HTML5,只要浏览器支持HTML5就可以使用pdf.js库,将服务器上的pdf文件转换成HTML5代码展示在浏览器上。...file=yourpdf.pdf 我们可以进一步修改viewer.html中的代码,根据需求去掉下载,打印等按钮,禁止用户下载和打印文件。
引言 在之前写的一篇文章【WPF --- 如何以Binding方式隐藏DataGrid列】中,我先探索了 DataGridTextColumn 为什么不在可视化树结构内?...然后有群友问了这样一个问题: 这里有两个问题: 非可视化树中的元素不能通过 RelativeSource 或者 ElementName 访问到可视化树中的数据,为何可以通过 resource 的方式访问...类型的才可以,我猜测这可能跟这个类的定义有关系,Freezable 类为 WPF 中的对象提供了不可变性和性能优化的功能,同时也为动画、资源共享和跨线程安全性等方面提供了便利。...该类是更好地管理和优化 WPF 应用程序中的对象和资源的,所以可能不想让开发者随意使用吧,所以就仅提供该类能够拥有 InheritanceContext 而没法使用 DependencyObject 。...好了,源码解析的过程其实还是比较复杂的,本文中其实也省略了一些源码阅读过程中细节,若大家阅读有疑问的地方,欢迎找我解疑,建议不明白的点,优先自行进行一下源码调试。 有错误之处,还请大家指正。
前言 WPF的本地化是个很常见的功能,我做过的WPF程序大部分都实现了本地化(不管最终有没有用到)。...要使用资源词典实现本地化,需要先创建所需语言的xaml,我在DEMO中创建了en-us.xaml和zh-cn.xaml两个资源词典,里面的包含的资源结构一致(指数量和Key一样): <ResourceDictionary...麻烦的是,WPF似乎不是很喜欢这种方式,VisualStudio会提示这种错误,毕竟资源文件中的属性都是static属性,不是实例成员。幸运的是编译一次这种错误提示就会消失。 ?...这时所有引用,包括XAML都已应用新的名称: ? 不过最后仍需自己动手在资源文件编辑器中修改Key。 除此之外,如果在XAML中使用了错误的Key,ReSharper也有错误提示: ?...WPF 全球化和本地化概述里有介绍一些本地化的最佳做法,如UI上应该使用相对布局而非绝对布局、字体选择等,这里不再累赘。
前言 曾经我以学习的目的写了关于在.NET Core3.1使用Prism的系列文章.NET Core 3 WPF MVVM框架 Prism系列文章索引,也谢谢大家的支持,事实上当初的版本则是Prism7.2.0.1442...Prism系列文章下面留下的我认为可以拿来一讲一些问题,而有些问题我则是水平有限回答不了(真的不是不想回答) 然后我拿之前的Prism Demo项目,WPF从.NET Core3.1升级到.NET...5其实非常简单,无脑修改项目的TargetFramework为net5.0-windows就行了,但是当Prism7.2升级到Prism8.0,我发现build的时候报了很多错误,那么让我们来看看究竟Prism8.0...Task的扩展方法: 你乍一看好像没什么卵用,但是里面还是有说法的,我们来看一个例子,WPF界面MVVM异步读取耗时数据加载界面,这里是xaml的简化代码:: xmlns:i="http://schemas.microsoft.com...,实际上Unity AOP功能非常强大,同样支持通过配置文件来配置AOP和支持对不同类型方法的拦截,需要了解更多细节在这里可推荐该博文C#中AOP_使用Unity实现AOP 是否所有事件和逻辑都在ViewModel
不同语言解析PDF内容都有各自的库,比如Java的pdfbox,.net的itextsharp。...c#解析PDF文本,关键代码可参考: http://www.cnblogs.com/mahongbiao/p/7652788.html 此外也可使用OCR,关键代码可参考: http://www.cnblogs.com.../mahongbiao/p/3760867.html 这些类库解析PDF文本有一个弊端,就是可配置性不强,它们多数是用于PDF文件生成的,对于PDF文本内容的提取仅提供一两个函数供调用。...而使用xpdf,则可以指定-layout参数,将其按照页面显示的布局方式输出。 下图为PDF样式: ? 下图为pdfBox、itextsharp解析出的内容样式: ?...例子中的中文没有解析出来,可通过配置PDF中文字体解决,xpdf的另一个强项功能,就是它支持配置pdf字体,有些PDF内容通过itextsharp解析不出来的情况下,使用xpdf在配置了正确字体后可以解析出内容
GridView控件与其他WPF控件配合使用可以实现更高级的功能,例如与TreeView控件配合使用实现分层数据呈现,与DataGrid控件配合使用实现可编辑数据表格呈现等等。...1.属性介绍WPF中GridView控件属性包括:Columns:用于设置和访问GridView中的列集合。可以通过代码或XAML来定义列和列的属性。...数据分组:GridView支持数据分组,可以根据指定的字段对数据进行分组。数据导出:GridView可以将数据导出到Excel和其他文件格式,方便用户进行数据分析和报表制作。...2.添加数据我们使用一个简单的学生类作为数据源,在MainWindow.xaml.cs文件中添加以下代码:public class Student{ public string Name { get...GridView会显示学生的姓名、年龄和性别。这就是WPF中使用GridView控件的简单示例。GridView在WPF中非常灵活,可以让我们轻松地创建数据驱动的UI。
本文演示如何使用iTextSharp PDF库将文本文件转换为PDF文件。 iTextSharp是一个从JAVA项目iText衍生的.Net版本的开源项目,采用GPL许可证发布。...介绍: ITextSharp中相关的概念: 一、Document 这个对象有三个构造函数: 隐藏行号 复制代码 ? 这是一段程序代码。...,你可以添加列表到PDF文件中,对于列表你还可以选择是否排序。...引用的命名空间 System.IO, iTextSharp, iTextSharp.text, iTextSharp.text.pdf, iTextSharp.text.pdf.draw 有到的控件:...PDF和使用iTextSharp工具转换为单个PDF的代码 The Code 1.
我疑惑了很久,直到看到了Visual Studio中的实时可视化树: 从图中可以看出,虽然我在 Xaml 中声明了两列 DataGridTextColumn,但他根本不在可视化树中。...「获取 RelativeSource 和指定 ElementName 的方式,本质上还是在可视化树中寻找元素」,所以上述方案无法生效。...那为什么 DataGridTextColumn 不在可视化树中呢? 可视化树(Visula Tree) 在上面那个问题之前,先看看什么是可视化树? 我们先从微软文档来看一下WPF中其他控件的继承树。...Visual 是 WPF 中可视化对象模型的基础,而 Visual 对象通过形成可视化树(Visual Tree)来组织所有可视化模型。...如果大家有更优雅的方案,欢迎留言讨论。 ❝参考 stackoverflow - how to hide wpf datagrid columns depending on a propert?
领取专属 10元无门槛券
手把手带您无忧上云