在軟件行業(yè),經(jīng)常會聽到一句話“文不如表,表不如圖”說明了圖形在軟件應(yīng)用中的重要性。同樣在WPF開發(fā)中,為了程序美觀或者業(yè)務(wù)需要,經(jīng)常會用到各種個樣的圖形。今天以一些簡單的小例子,簡述WPF開發(fā)中幾何圖形(Geometry)相關(guān)內(nèi)容,僅供學(xué)習(xí)分享使用,如有不足之處,還請指正。 ...
C#用戶控件之旋轉(zhuǎn)按鈕 按鈕功能:手自動旋轉(zhuǎn),標(biāo)簽文本顯示、點(diǎn)擊二次彈框確認(rèn)(源碼在最后邊); 【制作方法】 找到控件的中心坐標(biāo),畫背景外環(huán)、內(nèi)圓;再繪制矩形開關(guān),進(jìn)行角度旋轉(zhuǎn)即可獲得; 【關(guān)鍵節(jié)點(diǎn)】 No.1 獲取中心坐標(biāo),思考要繪制圖形的相對坐標(biāo)、寬度、高度; No.2 更改坐標(biāo)系原點(diǎn),以此原點(diǎn) ...
之前寫過兩篇關(guān)于Roslyn源生成器生成源代碼的用例,今天使用Roslyn的代碼修復(fù)器CodeFixProvider實(shí)現(xiàn)一個cs文件頭部注釋的功能, 代碼修復(fù)器會同時涉及到CodeFixProvider和DiagnosticAnalyzer, 實(shí)現(xiàn)FileHeaderAnalyzer 首先我們知道修 ...
簡介 這個類封裝了必應(yīng)首頁的每日壁紙查看功能,提供了查看、保存壁紙的方法,最大支持查看近8天的壁紙 使用方法 async Task Main() { try { var bing = BingWallpaperAPI.CreateInstance(8); //初始化,參數(shù)8表示一共會加載8張圖片 v ...
本文為大家介紹下.NET解壓/壓縮zip文件。雖然解壓縮不是啥核心技術(shù),但壓縮性能以及進(jìn)度處理還是需要關(guān)注下,針對使用較多的zip開源組件驗(yàn)證,給大家提供個技術(shù)選型參考 之前在《.NET WebSocket高并發(fā)通信阻塞問題 - 唐宋元明清2188 - 博客園 (cnblogs.com)》講過,團(tuán)隊(duì) ...
1. 生成式 AI 簡介 https://imp.i384100.net/LXYmq3 2. Python 語言 https://imp.i384100.net/5gmXXo 3. 統(tǒng)計(jì)和 R https://youtu.be/ANMuuq502rE?si=hw9GT6JVzMhRvBbF 4. 數(shù) ...
先看一下效果吧: 我們直接通過改造一下原版的TreeView來實(shí)現(xiàn)上面這個效果 我們先創(chuàng)建一個普通的TreeView 代碼很簡單: <TreeView> <TreeViewItem Header="人事部"/> <TreeViewItem Header="技術(shù)部"> <TreeViewItem He ...
C#用戶控件之指示燈 在體現(xiàn)通訊狀態(tài)、運(yùn)行狀態(tài)等用一個靚眼的指示燈如何做? 思路(GDI) 外環(huán)用筆繪制(Pen),內(nèi)圓用畫刷(SolidBrush); 兩個方法(用筆畫圓,用畫刷填充圓的內(nèi)部): 繪制邊界RectangleF定義的橢圓/圓 DrawEllipse(Pen pen,Rectangle ...
前言 推薦一款基于.NET 8、WPF、Prism.DryIoc、MVVM設(shè)計(jì)模式、Blazor以及MySQL數(shù)據(jù)庫構(gòu)建的企業(yè)級工作流系統(tǒng)的WPF客戶端框架-AIStudio.Wpf.AClient 6.0。 項(xiàng)目介紹 框架采用了 Prism 框架來實(shí)現(xiàn) MVVM 模式,不僅簡化了 MVVM 的典型 ...
場景: 在不動 業(yè)務(wù)邏輯的情況下, 實(shí)現(xiàn)讀寫緩存 這里使用的AOP的方式 在 方法上加注解, 這目前有個弊端不能傳數(shù)組, 涉及到排序問題 /// <summary> /// Json Redis緩存 /// </summary> public class RedisInterceptorAttrib ...
在網(wǎng)上找了許多例子 但是放在.net8 就不好使了 比如 在Program 中配置 IInterceptor或者 services.ConfigureDynamicProxy ,網(wǎng)上說的對 但是也不全對 //通過單元測試(MSTest) //創(chuàng)建IServiceCollection IService ...
C#用戶控件之儀表盤 如何讓溫度、濕度、壓力等有量程的監(jiān)控值如儀表盤(DashBoard)一樣顯示? 思路(GDI繪圖): 定義屬性:(儀表盤的半徑、顏色、間隙;刻度圓的半徑、顏色、字體;指針的顏色、占比;文本的字體、占比;) 繪制圖形:(半圓、刻度、指針、中心、文本) 定義屬性(將以上屬性挨個敲完 ...
項(xiàng)目上遇到使用WebSocket超時問題,具體情況是這樣的,OTA升級過程中,解壓zip文件會有解壓進(jìn)度事件,將解壓進(jìn)度通過進(jìn)程通信傳給另一進(jìn)程,通信提示超時異常 小伙伴堂園發(fā)現(xiàn)大文件使用Zip解壓,解壓進(jìn)度事件間隔竟然是1ms,簡直超大頻率啊 但是,解壓事件超頻也不應(yīng)該通信異常啊,于是我通過1ms ...
前言 在 Web 應(yīng)用開發(fā)過程中,防抖(Debounce) 是確保同一操作在短時間內(nèi)不會被重復(fù)觸發(fā)的一種有效手段。常見的場景包括防止用戶在短時間內(nèi)重復(fù)提交表單,或者避免多次點(diǎn)擊按鈕導(dǎo)致后臺服務(wù)執(zhí)行多次相同的操作。無論在單機(jī)環(huán)境中,還是在分布式系統(tǒng)中都有一些場景需要使用它。本文將介紹如何在ASP.NE ...
在WPF開發(fā)中經(jīng)常需要進(jìn)行繪制圖形,可以利用Shape類型繪制基本的形狀,而且Shape派生自FrameworkElement,屬于UI元素范疇,可以直接利用XAML進(jìn)行繪制。本文通過一些簡單的小例子,簡述如何通過Shape類繪制形狀,僅供學(xué)習(xí)分享使用,如有不足之處,還請指正。 ...
C#用戶控件之文本顯示、設(shè)定組件 如何繪制一個便捷的文本顯示組件、文本設(shè)值組件(TextShow,TextSet)? 繪制此控件的目的就是方便一鍵搞定標(biāo)簽顯示(可自定義方法顯示文本顏色等),方便自定義方法又省略了挨個拖拽的過程 純定義屬性 【文本設(shè)定】:字體、標(biāo)簽、值、單位;事件方法:Enter、L ...
前言 一個 .NET 驗(yàn)證框架,支持鏈?zhǔn)讲僮?,易于理解,功能完善,組件內(nèi)提供十幾種常用驗(yàn)證器,可擴(kuò)展性好,支持自定義驗(yàn)證器,支持本地化多語言。 項(xiàng)目介紹 FluentValidation 是一個開源的 .NET 庫,用于驗(yàn)證對象的屬性。 它提供了一種簡單而強(qiáng)大的方式來定義和執(zhí)行驗(yàn)證規(guī)則,使驗(yàn)證邏輯的 ...
無效果的嘗試 1、 在工具箱 點(diǎn)右鍵選擇 Repair ToolBox... 無效果2、 在工具箱中點(diǎn)右鍵重置工具箱 無效果3、 在工具箱中 右鍵 選擇項(xiàng) 瀏覽選擇對應(yīng)的dll,報錯提示 “面向無法動態(tài)枚舉工具箱項(xiàng)目的平臺” 無效果4、刪除整個vs配置文件夾:%LocalAppData%\Micro ...
@目錄前言一、VirtualizingStackPanel1.1 虛擬化功能介紹1、在Window中添加一個ListBox控件。2、在設(shè)計(jì)視圖中用鼠標(biāo)選中ListBox控件并右健依次單擊“編輯其他模板”-“編輯項(xiàng)的布局模板”-“編輯副本”。3、查看生成的模板代碼。1.2 虛擬化參數(shù)介紹二、Custo ...
C#用戶控件之流動管道 如何繪制一個動態(tài)的流動管道(FlowPipe)? 分兩步繪制 定義屬性; 畫布重繪; 主要技能: 管道的繪制(漸變色矩形) /// <summary> /// 畫漸變色矩形的方法 /// </summary> /// <param name="g">畫布</param> // ...