前一篇做了一個可以支援 Drag and Drop 的 Canvas,但方便性還是不夠,稍微來改進一下,製作一個泛用性更廣的類別吧。
[WPF] Darg and Drop (3)
- 280
- 0
前一篇做了一個可以支援 Drag and Drop 的 Canvas,但方便性還是不夠,稍微來改進一下,製作一個泛用性更廣的類別吧。
上一篇介紹了使用事件為主的 Drag and Drop 做法,有了基本的知識後,這一篇要利用附加屬性來製作一個 Drag and Drop Canvas。
很久沒寫文章了,這幾篇就來談談 WPF 中 Drag and Drop 的實作吧。
習慣寫 ControlTemplate 的朋友應該都滿習於使用 TemplateBinding,但是 TemplateBinding 有某些限制導致無法使用在 Trigger 中,本篇用個簡單的範例來說明如何解決類似的問題。
這是一些由 Microsoft Learn 上提供給 C# 初學者的課程目錄整理,初學者可以多多利用。
GetEnumerator 在 C# 9 開始,能以擴充方法的形式存在。
繼續說明 not patterns 和 simple type patterns。
再來也是個挺刺激的話題,pattern matching 在 C# 9.0 的增強。
繼續 record 的其他話題
前一篇我們提到了 init only setter,這一篇隆重登場的是 C# 9.0 的重量級人物 -- record。
C# 9.0 已經進入準備正式公開的階段,讓我們來預覽一下有哪些新鮮玩意兒。
前一篇文章談到了在 Windows Forms 上使用內嵌字型,這一篇來聊聊在 WPF 上的作法。
我們有時會希望在應用程式中使用非作業系統預設的字型,而又不希望另外安裝,這時可以把字型檔嵌入到應用程式中使用,也不須煩惱這個字型的安裝問題。
上一篇談了普遍的 DataTemplate Selector 實作,這一篇聊點進階的玩意。
WPF 中應用 DataTemplate Selector 的基本形式介紹。
簡單討論一些型別比對的方式。
Dicitonary<TKey,TValue> 索引子的應用。
利用 Task 建立長時工作並可以取消的簡單範例
Null-coalescing operator 的演進史。
前一篇介紹過簡單的單向處理,這一篇討論雙向繫結的情況。