常用数据显示ItemsControl:
都继承自 ItemsControl
数据源都是 ItemsSource
内容集合 Items
显示每个项的DataTemplate ItemTemplate
控制项的布局面板 ItemsPanel
为每一项设置style ItemContainerStyle
ListBox ListBoxItem
ListView ListViewItem View GridView GridViewColumn 自定义列
TreeView TreeViewItem HierarchicalDataTemplate的ItemsSource用于多层集合显示
TabControl TabItem
ComboBox ComboBoxItem
ContextMenu MenuItem
DataGrid Columns所有列 ItemsSource会自动显示string bool enum uri属性
Thumb 拖动控件 常和Canvas一起使用
事件DragDelta就是拖动的时候引发的
DragDeltaEventArgs e.HorizontalChange e.VerticalChange就是水平垂直方向拖动的距离
注:1.当一个控件没有设置Width属性的时候,它的Width的值为NaN
2.一个NaN和一个确定值相加,结果为NaN
画图:类及常用属性
Line Stroke
Rectangle Stroke Fill
Ellipse Stroke Width Height
Polygon
Polyline
RenderTransform 呈现变形
LayoutTransform 布局变形
MatrixTransform 矩阵变形
RotateTransform 旋转变形
ScaleTransform 坐标系变形
SkewTransform 拉伸变形
TranslateTransform 偏移变形
TransformGroup 变形组
动画:
各种动画派生类--->AnimationTimeline--->Timeline
Storyboard --->TimelineGroup --->Timeline
简单独立动画
DoubleAnimation Duration To By From
关键帧动画
DoubleAnimationUsingKeyFrames KeyFrames
场景
Storyboard SetTargetName SetTargetProperty Children.Add()
c#代码运行:
btn.BeginAnimation(Button.HeightProperty, doubleAnimation)
storyboard.Begin(this)
一般不会用C#来做动画,都是通过xaml来做动画,放入一个Storyboard中
通过Trigger和EventTrigger BeginStoryboard来开始动画
请注意:在元素上建立的触发器的集合只支持EventTrigger,而不支持属性触发器(Trigger)。
如果要使用属性触发器,则必须将这些触发器放在样式或模板,然后通过Style属性直接的或通过隐式样式引用间接地将其分配给元素
都继承自 ItemsControl
数据源都是 ItemsSource
内容集合 Items
显示每个项的DataTemplate ItemTemplate
控制项的布局面板 ItemsPanel
为每一项设置style ItemContainerStyle
ListBox ListBoxItem
ListView ListViewItem View GridView GridViewColumn 自定义列
TreeView TreeViewItem HierarchicalDataTemplate的ItemsSource用于多层集合显示
TabControl TabItem
ComboBox ComboBoxItem
ContextMenu MenuItem
DataGrid Columns所有列 ItemsSource会自动显示string bool enum uri属性
Thumb 拖动控件 常和Canvas一起使用
事件DragDelta就是拖动的时候引发的
DragDeltaEventArgs e.HorizontalChange e.VerticalChange就是水平垂直方向拖动的距离
注:1.当一个控件没有设置Width属性的时候,它的Width的值为NaN
2.一个NaN和一个确定值相加,结果为NaN
画图:类及常用属性
Line Stroke
Rectangle Stroke Fill
Ellipse Stroke Width Height
Polygon
Polyline
Path Stroke Data---Geometry EllipseGeometry LineGeometry PathGeometry RectangleGeometry StreamGeometry
注:StreamGeometry定义几何形状,并使用StreamGeometryContext描述,是PathGeometry的轻量级替代图形,DynamicDataDisplay里面就是用的这个类
PathGeometry 通过ArcSegment BezierSegment LineSegment PolyBezierSegment PolyLineSegment PolyQuadraticBezierSegment QuadraticBezierSegment合成图形
RenderTransform 呈现变形
LayoutTransform 布局变形
MatrixTransform 矩阵变形
RotateTransform 旋转变形
ScaleTransform 坐标系变形
SkewTransform 拉伸变形
TranslateTransform 偏移变形
TransformGroup 变形组
动画:
各种动画派生类--->AnimationTimeline--->Timeline
Storyboard --->TimelineGroup --->Timeline
简单独立动画
DoubleAnimation Duration To By From
关键帧动画
DoubleAnimationUsingKeyFrames KeyFrames
场景
Storyboard SetTargetName SetTargetProperty Children.Add()
c#代码运行:
btn.BeginAnimation(Button.HeightProperty, doubleAnimation)
storyboard.Begin(this)
一般不会用C#来做动画,都是通过xaml来做动画,放入一个Storyboard中
通过Trigger和EventTrigger BeginStoryboard来开始动画
请注意:在元素上建立的触发器的集合只支持EventTrigger,而不支持属性触发器(Trigger)。
如果要使用属性触发器,则必须将这些触发器放在样式或模板,然后通过Style属性直接的或通过隐式样式引用间接地将其分配给元素