最近工作中要在 WPF 中做个表格,自然首选就是 DataGrid 控件了。问题是,UI 设计的表格是在首行有一个新增按钮,那一行样式和其它数据行是一样的,就在表头下面那行。
一开始,参照了其它界面,这一行还是通过数据行来做,只不过绑定的数据项中有一个特殊的属性来表明这是个特殊行,界面上通过数据模板选择器来自动展现出特别的内容(新增按钮及相关文字,并把其它字段内容隐藏)。做好之后,工作地很好,可惜好景不长,同事提醒说数据多的话,出现滚动条,这一行要固定住,不过有个属性可以直接[……]
众所周知,编程,尤其是面向对象编程的一个重要思想就是 “封装”,可重用的代码逻辑封装为方法,使用于同一业务的方法封装为类,功能相关的类封装到一个类库中,等等等等。在 .NET 中,一个项目最终生成一个类库(DLL),当然,这个项目可能会引用其它项目或类库(所以生成路径下可能好多 .dll)。而我们用开发工具 Visual Studio 打开的一般是个解决方案,解决方案中一般包含了 1~n 个项目。另外,现在的开发流程中,一般都会使用版本控制系统,比较流行的就是[……]
WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换
我们平常在 WPF 中进行资源绑定操作,一般就是用 StaticResource 或者 DynamicResource 后面跟上资源的 key 这种形式,能满足大部分需求。但是有的时候,我们需要绑定的是代表了资源的 key 的变量,也就是动态绑定资源的 key(注意和 DynamicResource 区分开),比如本文将要演示的支持国际化的场景。这种动态绑定资源 key 的功能,在 WPF 中没有被原生支持,所以还是得在网上找找解决方法[……]
注意:本文仅供需要时参阅,无休闲阅读属性,前方高能(枯燥),非战斗人员请速速撤离。
注释已提交到码云:https://gitee.com/DLGCY_Clone/oxyplot/tree/dlgcy
另外,之前《OxyPlot.Wpf 图表控件使用备忘》一文的例子程序有了后续,用 OxyPlot 的注解功能添加了一个可拖动的十字游标功能,后面不一定会写关于它的文章,大家感兴趣的话可以先看看代码:
GitHub:https://github.com/oxyplot/oxyplot
官方文档地址:https://oxyplot.readthedocs.io/en/latest/index.html
使用版本:NuGet 版 2.0.0
命名空间:xmlns:oxy=”http://oxyplot.org/wpf”
参考文章:《OxyPlot 在 wpf 中绘制实时动态曲线【更新 2.0 去掉 Smooth 属性】》
上个月发了篇文章《Blazor 中如何下载文件到浏览器》,介绍了调用《下载中转加速器 VPSDownloader.NET(.NET Core 程序部署到 Linux 系统)》中提到的 VPS 文件中转下载服务后,如何将下载的文件以 Blazor 的方式传出到浏览器的方法。那么这篇文章就回过头来,介绍一下本项目(VPSDownloader.NET)使用 Blazor 的过程。
在 VisualStudio 中选择 “Blazor 应用” 项目模板:
填写项目[……]
最近想给之前文章《下载中转加速器 VPSDownloader.NET(.NET Core 程序部署到 Linux 系统)》中提到的 VPS 文件中转下载服务添加一个前端页面,其实之前也想使用热门的前端框架 Vue 来做,也做了点工作了,但是毕竟不是前端开发,上手起来还是比较慢的,而且引入了 NodeJS 等技术栈,和后端的 ASP.NET Core WebApi 也不共存于一个项目,开发和维护起来不太方便。后来了解到了发展如火如荼的 Blazor 框架,这个是微软开发的 .NET 领域的前端框架,在某种程度[……]
【翻译】WPF 中附加行为的介绍 Introduction to Attached Behaviors in WPF
作者:Josh Smith 2008.08.30
原文地址:https://www.codeproject.com/Articles/28959/Introduction-to-Attached-Behaviors-in-WPF
Explains the concept of attached behaviors and shows how to use them in the context of the[……]