活動簡介

提醒您!

此為歷史活動,如您對本活動有興趣,您可以從以下管道得到我們最新活動資訊:

現代桌面應用程式,玩轉WPF

活動規劃

在現代桌面應用程式的世界裡, WPF (Windows Presentation Foundation) 漸漸地取代 Windows Forms 的地位;因為 WPF 具有兩個非常重要的優勢:

  1. WPF 的建置核心是無關解析度的向量式圖形呈現引擎 (Vector-Based Rendering Engine),能夠善用新式圖形硬體的優點,其函式庫內的 UI 元素具有靈活的擴張性以及便利的動畫,能夠輕鬆變化出非常豐富視覺效果。
  2. WPF 具有強大的資料繫結引擎,能夠有效地分離資料與視覺介面的設計,對於程式架構擴充與維護提供了正向效益。

除此之外,學習 WPF 開發還有一個附加的好處,可以降低未來進入 UWP (Universal Windows Apps) 與 Xamarin Forms 的門檻。 這個課程將會從最基本的 XAML 概念談起,一路延伸到 UI 元素的使用與變化、資料繫結、Model-View-ViewModel 等等,用最快的途徑理解 WPF 的強大應用。課程的內容設計經過審慎的考量與組織,讓每個想學習 WPF 應用程式開發的人員都能夠在課程結束後順利上手。

活動等級:初階

活動講師

Bill
Bill

熱衷於物件導向程式開發的探索,喜歡研究物件導向基本理論與歷史,並偏好以非技術性的方式傳達物件導向開發的概念。專長領域為 RFID、通訊、OOP 與 Windows Store/Phone App 開發。

講師經歷:
  • 2009-至今 微軟最有價值專家 Microsoft MVP  Development Technologies
  • 台灣微軟 特約講師
  • Intel 特約講師
  • 全球前25大電子公司 UWP 顧問
  • SkillTree 專任講師

活動介紹

  1. 基本觀念
    1. XAML 基本結構
    2. XML 命名空間與 XAML 的關係
    3. XAML 語法簡介
    4. WPF 即時視覺化樹狀工具
  2. UI 元素與畫面配置
    1. 影響佈局的常用屬性
    2. UI 常用屬性
    3. 基本佈局元素
      1. Grid
      2. StackPanel
      3. Canvas
      4. WrapPanel
      5. DockPanel
    4. 輔助佈局元素
      1. Border
      2. ScrollViewer
      3. ViewBox
      4. GroupBox
      5. Expander
    5. 基本 UI 元素
      1. TextBlock
      2. Label
      3. Textbox
      4. PasswordBox
      5. Button
      6. CheckBox
      7. RadioButton
      8. Image
    6. 多重資料 UI 元素
      1. ItemsControl
      2. ListBox
      3. Comnobox
      4. DataGird
      5. ListView and GridView
      6. TreeView
    7. 其他 UI 元素
    8. 變形與動畫
      1. RenderTransform
      2. 多重變形
      3. LayoutTransform
      4. Animation and Storyboard
      5. 使用 Blend 建立 Storyboard
      6. EasingFunction
  3. 資料與命令繫結
    1. Model-View-ViewModel 的概念
    2. WPF Binding Engine
    3. 自動通知 ViewModel
    4. 通用命令類別
    5. 繫結 ViewMdoel 中的命令
    6. 指派 DataContext 的方式詳解
    7. Value Converter
    8. Multivalue converter
    9. 繫結至其他指定元素 Element Binding
    10. 繫結至相對元素 Relative Source Binding
    11. ObservableCollection<T>
    12. 集合式資料繫結
    13. 階層式資料繫結
    14. Master-Detail
    15. 實作各種 ViewModel data validation
    16. ApplicationCommands與CommandBinding
    17. 經驗談--不同層次的 ViewModel
    18. 鍵盤處理與命令繫結
  4. XAML 資源共用
    1. Resources 屬性簡介
    2. StaticResource vs DynamicResource
    3. 實作與應用獨立的資源檔案
  5. 樣式與範本
    1. Style
    2. ControlTemplate
    3. DataTemplate
    4. HierarchicalDataTemplate
  6. 詳解 Triggers 與 Behavior
    1. Trigger
    2. MultiTrigger
    3. DataTrigger
    4. MultiDataTrigger
    5. EventTrigger
    6. EventToCommand
    7. Behavior
  7. 深入自訂 UI
    1. Dependency Propery
    2. 使用者控制項
    3. 繼承既有控制項
  8. 跨執行緒處理
註:課程大綱依據領域分類,並非實際課程的順序。
 
 
 
 

講者的話

在高解析度與使用者介面要求越來越高的世界裡,Windows Forms 已經很難應付客戶的需求,舉個例子來說,在高解析度上的電腦開發 Windows Forms,你會發現設計畫面和最終執行結果根本是兩回事,如果要做到 Windows Forms 自適應視覺介面 (Adaptive user interface),開發人員得要花上數倍的精力來完成。
 
WPF 解決的了自適應的問題,同時也帶來的高效能且豐富的視覺渲染效果,以及更簡單的 UI 擴充方式,再加上強大的資料繫結,讓它成為了我現在開發桌面應用程式的首選。我想藉由這個課程,讓更多的人能夠寫出更棒更好的桌面應用程式。
 
別擔心這門學問的進入門檻,在我研究 WPF/XAML 這幾年的過程中,不斷地探索深入學習這個架構的癥結點,找出重要的竅門,將會在課程裡面詳細的解說,藉由這些竅門可以大幅縮短對 WPF 的學習與認知。只要你會 C#,肯定可以透過這個課程輕鬆一窺 WPF 的堂奧。
 
 

傳統 Windwos Forms 應用程式無法支援 RWD

WPF 開發的應用程式可以非常簡單的達到 RWD 效果

歷屆問卷回饋

  • 還OK,WPF新手上也不會太吃力
  • 老師講解得淺顯易懂。
  • 經過Bill叔幾天以來的講解感覺其實也沒有想像中的困難
  • 感謝老師不藏私,學習到很多WPF的知識
  • 後半段自訂控制項章節比較偏難一點。
  • 很有趣,講解的很仔細,上課時感覺輕鬆。
  • 老師有問必答非常厲害
  • MVP名副其實!!!! 這絕對是全台WPF最強課程! 雖然現在做網頁的才夯! 別人我是不知道,但是WPF的書我買也超過6000塊這們課的價值了,還沒有上課來的划算,書上照本宣科,還沒有實戰+有系統整理來的重要
  • 超神的,超讚的,幾乎有問必答,神乎其技。
  • 期待WPF進階班
  • 希望能繼續開類似的課程,增加 LAB 的比例。
  • 對整個wpf長期開發之路有一輪廓認識
  • 課程範例多(Skilltree都是這樣),講師超熱血 有點底子或是卡關的應該都會有腦洞大開的感覺
  • 食物和咖啡都有充足供應
  • 老師的經驗豐富可以解決大部分WPF的問題真的很厲害,程式範例準備很用心,上課時完全不冷場。
  • 前端xmls的詳細解說,確實WPF框架太活了,太多種寫法導致很難判定正確寫法
  • 快速的帶學員了解 WPF 控件各種用法,資料量夠。以後都可供查詢。
  • 非常好,尤其是老師們都很用心在替同學們解決問題的部分真的很有感覺,老師每次的回答都很專業,太棒惹!。SkillTree我一定要按100個讚,幾霸昏!。
  • 感謝bill叔開課,等待了一年,應用程式在目前在台灣一直萎縮,但是來到這邊可以接受到正確的教育,打好基礎對我幫助非常大。希望未來能夠連同WCF與WebApi或是DB串接等等加入內容。 畢竟實戰上已經脫離不了網路的應用,但是三天的課程也已經濃縮了大部分WPF該有的基礎,很難再塞入實戰系列的教學。希望未來能開一班WPF與網路串接實戰課程,畢竟架設起一套系統前端與後端的配合也是整套系統關鍵的地方。

注意事項

  • 本活動使用 C# 為主要語言
  • 本活動常態性免費延長時數(最高記錄18:00)如您晚上有約或預定車票,請斟酌延後。
  • 為避免清脆的鍵聲影響其他朋友,誠摯的懇求您不要攜帶機械式鍵盤

持續討論

我們提供多種的持續討論的管道,目的是希望您確實學到,並且持續進步,

還想知道什麼就留言吧

持續學習

  • 我們使用 Microsoft Teams 做課程討論平台。了解更多

注意事項

  • 若報名人數不足15人,或因不可抗拒因素(如:天災、停電)主辦單位有權取消當次活動,並無息退還全額活動費用。
  • 主辦單位保留接受報名與否之權利,倘因故無法接受報名,將會無息退還全額活動費用。
  • 主辦單位保留對活動內容調整的權力。

退款方法

  • 因部分必要支出與行政費用,完成繳費後如取消報名,將依據時間遞減退還費用。
  • 活動前7天申請退費,退費用0 %
  • 活動前8天申請退費,退費用90 %
  • 收到申請表後我們會主動與您聯繫。

目前活動