在大学,我们使用Windows Forms教授.NET(包括VB和C#)。我们想在我们的高级课程中介绍Windows Presentation Foundation(WPF)的概念。为了获得WPF的基本知识,学生需要学习哪些WPF基础知识?
这个想法是让学生在六个任务中至少有一个使用WPF,并且要学习所有这些WPF Fundamentals似乎有点令人生畏。哪三个基础被认为是强制性的?
Thanx你的时间!
答案 0 :(得分:8)
这是清单。我为我的初级程序员做好了准备。
1)XAML基础知识&基本控件,如TextBox,Buttons等,
2)VisualTree和LogicalTree
3)鼓泡和隧道
4)DependencyProperty
5)AttachedProperty
6)DataTemplate
7)ControlTemplate
8)风格
9)DataBinding
<强>触发器:强>
10)EventTriggers
11)DataTriggers
MVVM Basics&amp;命令:强>
12)代表委托
13)RelayCommand
14)应用程序命令
15)RoutedEvent
16)RoutedCommand
<强>转换:强>
17)RenderTransform
18)LayoutTransform
<强>资源:强>
19)BinaryResource
20)LogicalResource
21)StaticResource
22)DynamicResource
23)RelativeResource
Panles和Basic Controls:
24)布局和面板
25)UserControl
26)ContentControl
27)一些控件如Grid,TreeView和Charts
接口和收藏:
28)IValueConverter
29)INotifyPropertyChanged
30)ObservableCollection
31)CollectionViewSource
HTH
答案 1 :(得分:6)
我真的不相信三到四个主题就足够了。但谈到最高优先级,我会说
答案 2 :(得分:3)
如果您考虑如何教学地构建课程,您应该考虑Petzold's book。他构建章节的方式非常适合现场课程。它在教学上非常精细,我们在构建本书的课程方面取得了很好的经验。我们还体验到它对于具有Windows窗体背景的人来说特别有效。它仅以代码(c#)开头,后来才引入XAML。这有助于掌握框架的概念。
答案 3 :(得分:2)
Dependency Properties,Routed Events和layout model是绝对必要的。 Data Binding&amp;接下来是MVVM。
我不是WPF大师,但我认为从技术上讲,WPF要复杂得多,即Windows Forms,如果以后学生很常见,那么使用“WPF-way”进行编码将很困难(特别是,如果没有html / xml背景)。我怀疑,使用WPF编写健壮的代码是可能的,而不知道它的一些主要方面。对于快速或简单的UI,WPF确实是一个糟糕的选择。潜水需要相当多的学习时间。
答案 4 :(得分:2)
出于某种原因,他们都被称为基本原则。如果您计划构建任何类型的WPF应用程序,那么您应该至少对所有这些知识有基本的了解。
如果我不得不单独解决一些事情,以便你的班级至少可以开始构建一些东西,我可能会说:
XAML和数据绑定都是必须的。依赖属性紧随其后。输入/命令/路由事件也都包括在内。
答案 5 :(得分:1)
当我开始使用WPF时,我发现Charles Petzhold的书“Applications = Code + Markup”非常有用。本书的前半部分完全是C#代码,教授WPF的基本概念(依赖属性,事件等),没有任何XAML。本书的后半部分介绍了XAML的概念,以及它与本书上半部分学到的内容之间的关系。如果我在WPF上教课,我肯定会以类似的方式解决问题 - 首先在代码中教授概念,然后介绍XAML。
答案 6 :(得分:1)
虽然这是非常主观的,但我认为好的四个(来自那个链接):
除此之外,Dependency Properties是重要的,至少要了解XAML的工作原理。在WPF方面,没有真正的“唯一选项”。如果您使用WinForms等模型,这是一种全新的做事方式。我会尽可能地学习。