原创 WPF TreeView 檢測SelectedItem變化的簡單方案

TreeView無法綁定SelectedItem,而又想知道treeview的selecteditem的變化,當然目前有很多方法,我這裏簡單的提供一個。 目前主要思路就是通過處理xaml的TreeViewItem的IsSelected屬性來

原创 WPF 使用動畫繪製一個點贊大拇指

效果圖          好久沒有寫wpf了。 最近看到飛書的點贊動畫非常有意思,決定試試,雖然不及飛書那樣的絢麗,但是練手還是可以的,希望自己的手藝還在! 那麼如何寫一個這樣的動畫呢? 首先需要刨析這個動畫的構成: 外圈圓 大拇指-1豎

原创 Pratt Parser解釋器_TDOP_自上而下的運算符優先解析

Partt Parser又稱普拉特語法分析器。 指 沃爾-普拉特所編寫的論文《Top Down Operator Precedence》中的基於定義優先級運算符的方式解析爲AST樹的一種語法分析技術。    在執行語法分析器的時候,我們的已

原创 WPF 基於Geometry的橡皮擦功能

這是我大約半年前就想寫的隨筆。 功能很簡單。 就是基於Geometry的畫布,記錄鼠標軌跡生成PathGeometry。再就是添加刪除Path的功能也就是path筆跡刪除。 目前是實現了兩種方式。 1 基於預覽擦除 2 實時擦除    

原创 添加陰影

之前添加了漫反射和鏡面反射。 球體看起來已經很好了,現在我們要更上一步。添加陰影。   陰影 你的影子,物體的影子都可以說時陰影。 在書上,可以說陰影就是在光源和點之間存在物體。這個物體影響了點的光的計算。 因爲點自帶環境光,所以影響的是

原创 添加鏡面反射

在有了陰影之後,我們小球看起非常的不錯了。 現在我們讓球更加的真實吧。 我們的效果如下     鏡面反射 實際上我們一直做的事情光線追蹤,只不過是非常簡單的。 我們定義的球體是一個可以擁有反射,閃亮程度的物體,所以做到這樣子不成問題的。

原创 添加簡單的光

上一節中繪製出來的簡直慘不忍睹啊。   但是這一節中,我們就可以實現這樣的,看起來更真實了,因爲我們添加了光   漫反射   鏡面反射           光的類型 點光 可以理解爲燈泡,有着固定的位置,發出來的光線到每個點都是不一樣的

原创 WPF 只讀附加屬性的賦值與綁定

  附加只讀屬性是通過獲取非公開的DependencyPropertyKey字段的DependencyProperty屬性。      internal static readonly DependencyPropertyKey Clic

原创 WPF WriteableBitmap 跨距

  跨距也就是Stride,意思是圖像一行保存像素的字節數。   在寫入WriteableBitmap 【可寫位圖】時,通常會用到跨距這個數值。   這個數值的計算與可寫位圖的像素格式和像素寬度有關。   WriteableBitmap

原创 WPF 分組

分組和樹形結構是不一樣的。 樹形結構是以遞歸形式存在。分組是以鍵值對存在的形式,類似於GroupBy這樣的形式。 舉個例子 ID NAME SEX Class 1 張三 男 1 2 李四 女 2 3 王二 男 1 當

原创 WPF 製作雷達掃描圖

  實現一個雷達掃描圖。 源代碼在TK_King/雷達 (gitee.com),自行下載就好了     製作思路 繪製圓形(或者稱之輪) 繪製分割線 繪製掃描範圍 添加掃描點 具體實現 首先我們使用自定義的控件。你可以使用vs自動添

原创 PE頭-關於內存地址反推和unpackme#1的應用

在unpackme#1的破解中,涉及到修改PE文件。 其步驟是現在在text節的空白處填寫代碼,並在PE文件中修改執行OEP。   問題一 ee f8 01是怎麼來的 je short 00401083是e9 96 01修改爲ee f8 0

原创 PE頭-關於導入表的計算

我們使用01Editor觀察任意標準程序,比如筆記本notepad.exe。 在節NTHeader的DataDirArray的Import     我們得到 記錄導入表的RVA:7604H。 雖然記錄在VritualAddress的字段中

原创 WPF 3D穿梭效果,用WPF也湊湊熱鬧

CSS 效果博客地址: 3D 穿梭效果?使用 CSS 輕鬆搞定 - ChokCoco - 博客園 (cnblogs.com) UWP效果博客地址 3D 穿梭效果?使用 UWP 也能搞定 - dino.c - 博客園 (cnblogs.com

原创 WPF 基於五點線性平滑曲線算法

線性算法是基於最小二乘法所計算的平滑算法, 具體可以參考這篇博客幾個簡單的數據點平滑處理算法_Ivan 的專欄-CSDN博客_數據平滑處理 其他的算法原文解釋是: 算法的原理很簡單,以五點三次平滑爲例。取相鄰的5個數據點,可以擬合出一條3次