WPF 資源與樣式:隱式樣式、外觀/主題與皮膚切換
隱式樣式:以 TargetType 自動套用 移除 x:Key、改設 TargetType={x:Type Button},所有 Button 實例自動套用,無
WPF 二進位資源:內嵌流、BAML 與 ResourceManager
二進位資源處理 並非所有資源適合以物件形式存放(如圖片、音訊、影片)。WPF 沿用 .NET 內嵌資源機制:在 Visual Studio 將檔案 Build
WPF 應用程式全球化與當地語系化實作指南
全球化 vs 當地語系化 當地語系化:為特定文化建立專屬資源(文字翻譯、圖片替換等)。 全球化:確保應用程式無需重新編譯即可被當地語系化,單一版本透過執行期資源
《Programming WPF》第 6 章總結:資源、樣式與本地化
WPF 提供資源機制,讓 UI 中的資源能動態且一致地被引用。任意資源皆可存入資源字典,並跨應用程式引用。樣式系統建立於資源字典之上,依據應用程式外觀或系統主題
《Programming WPF》第 7 章前言:圖形與動畫的基石
WPF 讓建立視覺豐富的應用程式變得前所未有的容易。它提供極富表現力的繪圖能力,並充分釋放現代顯示晶片的運算威力,讓設計師能輕鬆實現複雜佈局與動畫,使 UI 更
WPF 圖形基礎:合成、物件模型與解析度獨立性
深度合成:圖形與 UI 的無縫整合 WPF 最大的特色在於「合成」——圖形元素(Shape)就是普通的 UI 樹節點,可自由混入任何容器、控件甚至文字內部。傳統
WPF 圖形繪製詳解:從基礎形狀到複雜路徑
WPF 圖形系統概覽 在 WPF 中,圖形不僅僅是繪圖指令,而是實實在在的 UI 樹元素。所有形狀類別都繼承自抽象基類 Shape,這意味著它們共享一組通用屬性
WPF 筆刷與鋼筆全解析:六大筆刷類型、TileBrush 佈局、DrawingBrush/VisualBrush、Pen 輪廓控制
色彩表示:scRGB 與 16 位通道 Color 結構:R/G/B/A 四通道,各 16 位(0~65535),支援浮點 ScR/ScG/ScB/ScA (
WPF 轉換系統:RenderTransform vs LayoutTransform、TransformGroup、字串簡寫、任意階層套用
轉換支援高解析度獨立性的基石 WPF 將縮放/旋轉/傾斜整合在基礎圖形架構,任意 UI 元素皆可套用轉換,實現真正的解析度獨立。 兩種轉換屬性:渲染 vs 版
WPF 可視化層程式設計:OnRender、DrawingContext、指令緩存與無效化機制
何時使用可視化層? 當用 Shape 元素建構視覺樹過於繁重、或資料結構適合直接發繪圖指令時,可繞過元素樹,直接在 OnRender 中按需生成繪圖指令。 O
WPF 整合視訊與 3D:MediaElement 播放影片、Viewport3D 嵌入三維場景
MediaElement:影片播放元素 可置於 UI 樹任意位置,像一般控制項一樣配置大小位置。 Source 屬性指定影片串流路徑(本機檔案、HTTP UR
WPF 圖形總結:Shape 元素、筆刷/鋼筆、轉換、視訊/3D、可視化層程式設計
第 7 章核心能力回顧 Shape 元素:Rectangle、Ellipse、Line、Polyline、Polygon、Path 提供聲明式繪圖基礎。 筆刷
WPF 動畫前言:從靜態 UI 到自然互動,動畫系統的設計哲學
靜態 UI 的缺憾 完全靜態的介面讓使用者難以判斷應用程式是否回應、是否凍結。視覺回饋是確認互動的關鍵。控制項模仿物理行為(按鈕被按下凹陷),但若瞬間切換狀態會
WPF 動畫基礎:聲明式動畫、可動畫屬性條件、內嵌屬性動畫技巧
動畫本質:一段時間改變屬性值 WPF 動畫 = 聲明「想要什麼」,系統負責實現。核心限制:只能改變現有屬性值,無法增減視覺樹節點、無法在兩種佈局間自動插值(如
WPF Timeline 核心機制:層次結構、持續時間計算、重複行為、填充期、速度比率
Timeline 基本屬性 BeginTime:相對於父 Timeline 的開始偏移(預設 0)。可設 {x:Null} 由觸發器啟動。 Duration:
WPF Storyboard 深度解析:架構、樣式/模板整合、觸發器驅動、程式碼啟動
Storyboard:動畫的容器與協調者 動畫集合,解決「多個 UI 元素同步/異步動畫」的結構問題。 XAML 中動畫必須定義在 Storyboard 內;
WPF 關鍵幀動畫:DoubleAnimationUsingKeyFrames、Spline 插值與多型別支援
從簡單雙點到複雜軌跡 簡單動畫只用 From/To/By 定義起訖,中間線性插值。關鍵幀動畫允許指定多個「時間-值」關鍵點,WPF 自動補間,構建複雜軌跡。
WPF 程式碼建立動畫:本地動畫與 PersistentAnimations 實作
為什麼用程式碼建立動畫? XAML 靜態宣告無法適應運行時環境(如視窗大小決定動畫參數)。 程式碼可計算動態屬性值,提供更大彈性。 本地動畫:跳過 Sto