Windows phone 7之基础控件-属性与事件
Windows phone中最常用的控件是TextBlock、TextBox和Button。TextBlock用来显示信息,TextBox一般用来输入信息,Button用来相应点击事件。但是不绝对是这样的,为什么呢,因为silverlight最强大的地方在于模板,只要你定义合适的模板,那TextBlock可以作为一个TextBox使用也可以作为一个Button使用。关于模板的内容在以后的章节中描述,现在是要知道,silverlight可以千变万化就好了,windows phone 7SDK是基于silverlight3的,7.1SDK是基于silvelight4的所以windows phone的控件也是千变万化的。
看一下TextBlock的属性、方法与事件
属性
名称 | 说明 | |
---|---|---|
ActualHeight | 获取此元素的呈现高度。 (继承自 FrameworkElement。) | |
ActualWidth | 获取此元素的呈现宽度。 (继承自 FrameworkElement。) | |
AllowDrop | 获取或设置一个值,该值指示此元素是否可用作拖放操作的目标。这是一个依赖项属性。 (继承自 UIElement。) | |
AreAnyTouchesCaptured | 获取一个值,该值指示在此元素上是否至少捕获了一次触摸。 (继承自 UIElement。) | |
AreAnyTouchesCapturedWithin | 获取一个值,该值指示在此元素或其可视化树中的任何子元素上是否至少捕获了一次触摸。 (继承自 UIElement。) | |
AreAnyTouchesDirectlyOver | 获取一个值,该值指示在此元素上是否至少按下了一次触摸设备。 (继承自 UIElement。) | |
AreAnyTouchesOver | 获取一个值,该值指示在此元素或其可视化树中的任何子元素上是否至少按下了一次触摸设备。 (继承自 UIElement。) | |
Background | 获取或设置要用于填充内容区域背景的 Brush。 | |
BaselineOffset | 获取或设置每个文本行相对于基线的偏移量。 | |
BindingGroup | 获取或设置用于该元素的 BindingGroup。 (继承自 FrameworkElement。) | |
BitmapEffect | 已过时。获取或设置直接应用于此元素中的呈现内容的位图效果。这是一个依赖项属性。 (继承自 UIElement。) | |
BitmapEffectInput | 已过时。为直接应用于此元素中的呈现内容的位图效果获取或设置输入源。这是一个依赖项属性。 (继承自 UIElement。) | |
BreakAfter | 获取一个 LineBreakCondition,它指示内容应当如何在当前元素之后进行分行。 | |
BreakBefore | 获取一个 LineBreakCondition,它指示内容应当如何在当前元素之前进行分行。 | |
CacheMode | 获取或设置 UIElement 的缓存表示形式。 (继承自 UIElement。) | |
Clip | 获取或设置用于定义元素内容边框的几何图形。这是一个依赖项属性。 (继承自 UIElement。) | |
ClipToBounds | 获取或设置一个值,用于表示是否剪裁此元素的内容(或来自此元素的子元素的内容)以适合包含元素的大小。这是一个依赖项属性。 (继承自 UIElement。) | |
CommandBindings | 获取与此元素关联的 CommandBinding 对象的集合。CommandBinding 为此元素启用命令处理,并声明命令、命令的事件和由此元素附加的处理程序之间的链接。 (继承自 UIElement。) | |
ContentEnd | 获取一个指向 TextBlock 中内容的末尾的 TextPointer。 | |
ContentStart | 获取一个指向 TextBlock 中内容的开始位置的 TextPointer。 | |
ContextMenu | 获取或设置每当通过user interface (UI) 从此元素内部请求上下文菜单时应该显示的上下文菜单元素。 (继承自 FrameworkElement。) | |
Cursor | 获取或设置当鼠标指针悬停在此元素上时显示的光标。 (继承自 FrameworkElement。) | |
DataContext | 获取或设置元素参与数据绑定时的数据上下文。 (继承自 FrameworkElement。) | |
DefaultStyleKey | 在使用或定义主题样式时,获取或设置用于引用此控件的样式的键。 (继承自 FrameworkElement。) | |
DependencyObjectType | 获取对此实例的 CLR 类型进行包装的 DependencyObjectType。 (继承自 DependencyObject。) | |
DesiredSize | 获取此元素在布局过程的测量处理过程中计算的大小。 (继承自 UIElement。) | |
Dispatcher | 获取与此 DispatcherObject 关联的 Dispatcher。 (继承自 DispatcherObject。) | |
Effect | 获取或设置要应用于 UIElement 的位图效果。这是一个依赖项属性。 (继承自 UIElement。) | |
FlowDirection | 获取或设置文本和其他user interface (UI) 元素在控制它们布局的任何父元素中的流动方向。 (继承自 FrameworkElement。) | |
Focusable | 获取或设置一个值,该值指示该元素是否可以接收焦点。这是一个依赖项属性。 (继承自 UIElement。) | |
FocusVisualStyle | 获取或设置一个属性,该属性支持自定义将在此元素捕获键盘焦点时应用于此元素的外观、效果或其他样式特征。 (继承自 FrameworkElement。) | |
FontFamily | 获取或设置 TextBlock 的首选顶级字体系列。 | |
FontSize | 获取或设置 TextBlock 的顶级字号。 | |
FontStretch | 获取或设置 TextBlock 的顶级字体拉伸特征。 | |
FontStyle | 获取或设置 TextBlock 的顶级字形。 | |
FontWeight | 获取或设置 TextBlock 的顶级字体粗细。 | |
ForceCursor | 获取或设置一个值,该值指示此 FrameworkElement 是否应该强制user interface (UI) 按照 Cursor 属性所声明的方式呈现光标。 (继承自 FrameworkElement。) | |
Foreground | 获取或设置要应用于 TextBlock 的文本内容的 Brush。 | |
HasAnimatedProperties | 获取一个值,该值指示此元素是否具有任何进行动画处理的属性。 (继承自 UIElement。) | |
Height | 获取或设置元素的建议高度。 (继承自 FrameworkElement。) | |
HorizontalAlignment | 获取或设置在父元素(如面板或项控件)中构成此元素时应用于此元素的水平对齐特征。 (继承自 FrameworkElement。) | |
HostedElementsCore | 获取一个可用于迭代此 TextBlock 承载的元素的枚举数。 | |
InheritanceBehavior | 获取或设置属性值继承、资源键查找和RelativeSource FindAncestor 查找的范围限制。 (继承自 FrameworkElement。) | |
Inlines | 获取一个 InlineCollection,其中包含组成 TextBlock 内容的顶级 Inline 元素。 | |
InputBindings | 获取与此元素关联的输入绑定的集合。 (继承自 UIElement。) | |
InputScope | 获取或设置此 FrameworkElement 使用的输入上下文。 (继承自 FrameworkElement。) | |
IsArrangeValid | 获取一个值,该值指示此元素布局中的子元素的计算大小和位置是否有效。 (继承自 UIElement。) | |
IsEnabled | 获取或设置一个值,该值指示是否在user interface (UI) 中启用了此元素。这是一个依赖项属性。 (继承自 UIElement。) | |
IsEnabledCore | 获取一个值,该值成为派生类中 IsEnabled 的返回值。 (继承自 UIElement。) | |
IsFocused | 获取一个值,该值确定此元素是否具有逻辑焦点。这是一个依赖项属性。 (继承自 UIElement。) | |
IsHitTestVisible | 获取或设置一个值,该值声明此元素是否可以作为其呈现内容的某部分的命中测试结果返回。这是一个依赖项属性。 (继承自 UIElement。) | |
IsHyphenationEnabled | 获取或设置一个值,该值指示是否启用文字的自动断字功能。 | |
IsInitialized | 获取一个值,该值指示此元素是否已初始化(在 XAML 处理器处理的过程中初始化,或通过显式调用其 EndInit 方法进行初始化)。 (继承自 FrameworkElement。) | |
IsInputMethodEnabled | 获取一个值,该值指示是否启用一个输入法系统(如Input Method Editor (IME)),以便用于处理此元素的输入。 (继承自 UIElement。) | |
IsKeyboardFocused | 获取一个值,该值指示此元素是否具有键盘焦点。这是一个依赖项属性。 (继承自 UIElement。) | |
IsKeyboardFocusWithin | 获取一个值,该值指示键盘焦点是否位于元素或其可视树子元素内的任意位置。这是一个依赖项属性。 (继承自 UIElement。) | |
IsLoaded | 获取一个值,该值指示是否已加载此元素以供呈现。 (继承自 FrameworkElement。) | |
IsManipulationEnabled | 获取或设置一个值,该值指示是否对此 UIElement 启用操作事件。 (继承自 UIElement。) | |
IsMeasureValid | 获取一个值,该值指示布局测量返回的当前大小是否有效。 (继承自 UIElement。) | |
IsMouseCaptured | 获取一个值,该值指示此元素是否捕获了鼠标。这是一个依赖项属性。 (继承自 UIElement。) | |
IsMouseCaptureWithin | 获取一个值,该值确定此元素或其可视树中的子元素是否具有鼠标捕获。这是一个依赖项属性。 (继承自 UIElement。) | |
IsMouseDirectlyOver | 获取一个值,该值指示鼠标指针的位置是否与考虑元素组合的命中测试结果相对应。这是一个依赖项属性。 (继承自 UIElement。) | |
IsMouseOver | 获取一个值,该值指示鼠标指针是否位于此元素(包括可视树上的子元素)上。这是一个依赖项属性。 (继承自 UIElement。) | |
IsSealed | 获取一个值,该值指示此实例当前是否为密封的(只读)。 (继承自 DependencyObject。) | |
IsStylusCaptured | 获取一个值,该值指示此元素是否捕获了触笔。这是一个依赖项属性。 (继承自 UIElement。) | |
IsStylusCaptureWithin | 获取一个值,该值确定此元素或其边界和可视树中的元素是否具有触笔捕获。这是一个依赖项属性。 (继承自 UIElement。) | |
IsStylusDirectlyOver | 获取一个值,该值指示触笔的位置是否与考虑元素组合的命中测试结果相对应。这是一个依赖项属性。 (继承自 UIElement。) | |
IsStylusOver | 获取一个值,该值指示触笔光标是否位于此元素(包括可视子元素)上。这是一个依赖项属性。 (继承自 UIElement。) | |
IsVisible | 获取一个值,该值指示此元素在user interface (UI) 中是否可见。这是一个依赖项属性。 (继承自 UIElement。) | |
Language | 获取或设置适用于某个元素的本地化/全球化语言信息。 (继承自 FrameworkElement。) | |
LayoutTransform | 获取或设置在执行布局时应该应用于此元素的图形转换方式。 (继承自 FrameworkElement。) | |
LineHeight | 获取或设置各行内容的高度。 | |
LineStackingStrategy | 获取或设置为 TextBlock 内的每行文本确定行框的机制。 | |
LogicalChildren | 获取一个可用于迭代 TextBlock 的逻辑子级的枚举数。 (重写 FrameworkElement.LogicalChildren。) | |
Margin | 获取或设置元素的外边距。 (继承自 FrameworkElement。) | |
MaxHeight | 获取或设置元素的最大高度约束。 (继承自 FrameworkElement。) | |
MaxWidth | 获取或设置元素的最大宽度约束。 (继承自 FrameworkElement。) | |
MinHeight | 获取或设置元素的最小高度约束。 (继承自 FrameworkElement。) | |
MinWidth | 获取或设置元素的最小宽度约束。 (继承自 FrameworkElement。) | |
Name | 获取或设置元素的标识名称。该名称提供一个引用,以便当 XAML 处理器在处理过程中构造标记元素之后,代码隐藏(如事件处理程序代码)可以对该元素进行引用。 (继承自 FrameworkElement。) | |
Opacity | 获取或设置当 UIElement 在user interface (UI) 中呈现时为其整体应用的不透明度因子。这是一个依赖项属性。 (继承自 UIElement。) | |
OpacityMask | 获取或设置不透明蒙板,作为应用于此元素已呈现内容的任何 Alpha 通道蒙板的 Brush 实现。这是一个依赖项属性。 (继承自 UIElement。) | |
OverridesDefaultStyle | 获取或设置一个值,该值指示此元素是否合并了主题样式中的样式属性。 (继承自 FrameworkElement。) | |
Padding | 获取或设置一个值,该值指示内容区域的边界与 TextBlock 所显示内容之间的边距的宽度。 | |
Parent | 获取此元素的逻辑父级元素。 (继承自 FrameworkElement。) | |
PersistId | 已过时。获取一个唯一标识此元素的值。 (继承自 UIElement。) | |
RenderSize | 获取(或设置,请参见备注)此元素的最终呈现大小。 (继承自 UIElement。) | |
RenderTransform | 获取或设置影响此元素呈现位置的转换信息。这是一个依赖项属性。 (继承自 UIElement。) | |
RenderTransformOrigin | 获取或设置由 RenderTransform 声明的任何可能呈现转换的中心点,相对于元素的边界。这是一个依赖项属性。 (继承自 UIElement。) | |
Resources | 获取或设置本地定义的资源字典。 (继承自 FrameworkElement。) | |
SnapsToDevicePixels | 获取或设置一个值,该值决定在呈现过程中,此元素的呈现是否应使用特定于设备的像素设置。这是一个依赖项属性。 (继承自 UIElement。) | |
Style | 获取或设置此元素在呈现时使用的样式。 (继承自 FrameworkElement。) | |
StylusPlugIns | 获取与此元素关联的所有触笔插件(自定义)对象的集合。 (继承自 UIElement。) | |
Tag | 获取或设置一个可用于存储有关此元素的自定义信息的任意对象值。 (继承自 FrameworkElement。) | |
TemplatedParent | 获取一个对此元素的模板父级的引用。如果此元素不是通过模板创建而成,则此属性并不相关。 (继承自 FrameworkElement。) | |
Text | 获取或设置 TextBlock 的文本内容。 | |
TextAlignment | 获取或设置一个值,该值指示文本内容的水平对齐方式。 | |
TextDecorations | 获取或设置 TextDecorationCollection,它包含应用于 TextBlock 的文本的效果。 | |
TextEffects | 获取或设置要应用于此元素中的文本内容的效果。 | |
TextTrimming | 获取或设置当内容溢出内容区域时要采取的文本修整行为。 | |
TextWrapping | 获取或设置 TextBlock 对文本进行换行的方式。 | |
ToolTip | 获取或设置在user interface (UI) 中为此元素显示的工具提示对象。 (继承自 FrameworkElement。) | |
TouchesCaptured | 获取在此元素上捕获的所有触摸设备。 (继承自 UIElement。) | |
TouchesCapturedWithin | 获取在此元素或其可视化树中的任何子元素上捕获的所有触摸设备。 (继承自 UIElement。) | |
TouchesDirectlyOver | 获取此元素上的所有触摸设备。 (继承自 UIElement。) | |
TouchesOver | 获取在此元素或其可视化树中的任何子元素上的所有触摸设备。 (继承自 UIElement。) | |
Triggers | 获取直接在此元素上建立或在子元素中建立的触发器的集合。 (继承自 FrameworkElement。) | |
Typography | 获取此元素的内容的当前有效版式变体。 | |
Uid | 获取或设置此元素的唯一标识符(用于本地化)。这是一个依赖项属性。 (继承自 UIElement。) | |
UseLayoutRounding | 获取或设置一个值,该值指示在布局过程中是否应该对此元素的大小和位置应用布局舍入。 (继承自 FrameworkElement。) | |
VerticalAlignment | 获取或设置在父元素(如面板或项控件)中组合此元素时应用于此元素的垂直对齐特征。 (继承自 FrameworkElement。) | |
Visibility | 获取或设置此元素的user interface (UI) 可见性。这是一个依赖项属性。 (继承自 UIElement。) | |
VisualBitmapEffect | 已过时。获取或设置 Visual 的 BitmapEffect 值。 (继承自 Visual。) | |
VisualBitmapEffectInput | 已过时。获取或设置 Visual 的 BitmapEffectInput 值。 (继承自 Visual。) | |
VisualBitmapScalingMode | 获取或设置 Visual 的 BitmapScalingMode。 (继承自 Visual。) | |
VisualCacheMode | 获取或设置 Visual 的缓存表示形式。 (继承自 Visual。) | |
VisualChildrenCount | 获取 TextBlock 所承载的 Visual 子项的数目。 (重写 FrameworkElement.VisualChildrenCount。) | |
VisualClearTypeHint | 获取或设置 ClearTypeHint,它确定在 Visual 中呈现 ClearType 的方式。 (继承自 Visual。) | |
VisualClip | 获取或设置 Visual 的剪辑区域作为 Geometry 值。 (继承自 Visual。) | |
VisualEdgeMode | 获取或设置 Visual 的边缘模式作为 EdgeMode 值。 (继承自 Visual。) | |
VisualEffect | 获取或设置要应用于 Visual 的位图效果。 (继承自 Visual。) | |
VisualOffset | 获取或设置可视对象的偏移量值。 (继承自 Visual。) | |
VisualOpacity | 获取或设置 Visual 的不透明度。 (继承自 Visual。) | |
VisualOpacityMask | 获取或设置 Brush 值,该值表示 Visual 的不透明蒙板。 (继承自 Visual。) | |
VisualParent | 获取可视对象的可视化树父级。 (继承自 Visual。) | |
VisualScrollableAreaClip | 获取或设置 Visual 的剪辑的可滚动区域。 (继承自 Visual。) | |
VisualTextHintingMode | 获取或设置 Visual 的 TextHintingMode。 (继承自 Visual。) | |
VisualTextRenderingMode | 获取或设置 Visual 的 TextRenderingMode。 (继承自 Visual。) | |
VisualTransform | 获取或设置 Visual 的 Transform 值。 (继承自 Visual。) | |
VisualXSnappingGuidelines | 获取或设置 X 坐标(垂直)准线集合。 (继承自 Visual。) | |
VisualYSnappingGuidelines | 获取或设置 Y 坐标(水平)准线集合。 (继承自 Visual。) | |
Width | 获取或设置元素的宽度。 (继承自 FrameworkElement。) |
名称 | 说明 | |
---|---|---|
ContextMenuClosing | 在元素上的任何上下文菜单关闭之前发生。 (继承自 FrameworkElement。) | |
ContextMenuOpening | 在元素上的任何上下文菜单打开时发生。 (继承自 FrameworkElement。) | |
DataContextChanged | 仅当此元素的数据上下文更改时才发生。 (继承自 FrameworkElement。) | |
DragEnter | 在输入系统报告将此元素作为拖动目标的基础拖动事件时发生。 (继承自 UIElement。) | |
DragLeave | 在输入系统报告将此元素作为拖动来源的基础拖动事件时发生。 (继承自 UIElement。) | |
DragOver | 在输入系统报告将此元素作为潜在放置目标的基础拖动事件时发生。 (继承自 UIElement。) | |
Drop | 在输入系统报告将此元素作为放置目标的基础放置事件时发生。 (继承自 UIElement。) | |
FocusableChanged | 当 Focusable 属性的值更改时发生。 (继承自 UIElement。) | |
GiveFeedback | 在输入系统报告涉及此元素的基础拖放事件时发生。 (继承自 UIElement。) | |
GotFocus | 在此元素获得逻辑焦点时发生。 (继承自 UIElement。) | |
GotKeyboardFocus | 在键盘焦点位于此元素上时发生。 (继承自 UIElement。) | |
GotMouseCapture | 在此元素捕获鼠标时发生。 (继承自 UIElement。) | |
GotStylusCapture | 在此元素捕获触笔时发生。 (继承自 UIElement。) | |
GotTouchCapture | 在此元素上捕获触摸屏输入时发生。 (继承自 UIElement。) | |
Initialized | 初始化此 FrameworkElement 时发生。此事件与 IsInitialized 属性的值从 false(或未定义)更改为 true 的情况相符。 (继承自 FrameworkElement。) | |
IsEnabledChanged | 在此元素的 IsEnabled 属性值更改时发生。 (继承自 UIElement。) | |
IsHitTestVisibleChanged | 在此元素的 IsHitTestVisible 依赖项属性值更改时发生。 (继承自 UIElement。) | |
IsKeyboardFocusedChanged | 在此元素的 IsKeyboardFocused 属性值更改时发生。 (继承自 UIElement。) | |
IsKeyboardFocusWithinChanged | 在此元素的 IsKeyboardFocusWithinChanged 属性值更改时发生。 (继承自 UIElement。) | |
IsMouseCapturedChanged | 在此元素的 IsMouseCaptured 属性值更改时发生。 (继承自 UIElement。) | |
IsMouseCaptureWithinChanged | 在此元素的 IsMouseCaptureWithinProperty 值更改时发生。 (继承自 UIElement。) | |
IsMouseDirectlyOverChanged | 在此元素的 IsMouseDirectlyOver 属性值更改时发生。 (继承自 UIElement。) | |
IsStylusCapturedChanged | 在此元素的 IsStylusCaptured 属性值更改时发生。 (继承自 UIElement。) | |
IsStylusCaptureWithinChanged | 在此元素的 IsStylusCaptureWithin 属性值更改时发生。 (继承自 UIElement。) | |
IsStylusDirectlyOverChanged | 在此元素的 IsStylusDirectlyOver 属性值更改时发生。 (继承自 UIElement。) | |
IsVisibleChanged | 在此元素的 IsVisible 属性值更改时发生。 (继承自 UIElement。) | |
KeyDown | 在焦点位于此元素上并且用户按下键时发生。 (继承自 UIElement。) | |
KeyUp | 在焦点位于此元素上并且用户释放键时发生。 (继承自 UIElement。) | |
LayoutUpdated | 在与当前 Dispatcher 关联的各种可视元素的布局更改时发生。 (继承自 UIElement。) | |
Loaded | 在元素已布局、已呈现且可用于交互时发生。 (继承自 FrameworkElement。) | |
LostFocus | 在此元素失去逻辑焦点时发生。 (继承自 UIElement。) | |
LostKeyboardFocus | 在键盘焦点不再位于此元素上时发生。 (继承自 UIElement。) | |
LostMouseCapture | 在此元素失去鼠标捕获时发生。 (继承自 UIElement。) | |
LostStylusCapture | 在此元素失去触笔捕获时发生。 (继承自 UIElement。) | |
LostTouchCapture | 在此元素失去触摸屏输入捕获时发生。 (继承自 UIElement。) | |
ManipulationBoundaryFeedback | 当操作遇到边界时发生。 (继承自 UIElement。) | |
ManipulationCompleted | 对于 UIElement 对象的操作和延时完毕时发生。 (继承自 UIElement。) | |
ManipulationDelta | 当输入设备在操作期间更改位置时发生。 (继承自 UIElement。) | |
ManipulationInertiaStarting | 当输入设备在操作期间与 UIElement 对象失去联系且延时开始时发生。 (继承自 UIElement。) | |
ManipulationStarted | 当输入设备对 UIElement 对象开始操作时发生。 (继承自 UIElement。) | |
ManipulationStarting | 在首次创建操作处理器时发生。 (继承自 UIElement。) | |
MouseDown | 在指针悬停于此元素上并且用户按下任意鼠标按钮时发生。 (继承自 UIElement。) | |
MouseEnter | 在鼠标指针进入此元素的边界时发生。 (继承自 UIElement。) | |
MouseLeave | 在鼠标指针离开此元素的边界时发生。 (继承自 UIElement。) | |
MouseLeftButtonDown | 在鼠标指针悬停于此元素上并且用户按下鼠标左键时发生。 (继承自 UIElement。) | |
MouseLeftButtonUp | 在鼠标指针悬停于此元素上并且用户释放鼠标左键时发生。 (继承自 UIElement。) | |
MouseMove | 在鼠标指针悬停于此元素上并且用户移动该鼠标指针时发生。 (继承自 UIElement。) | |
MouseRightButtonDown | 在鼠标指针悬停于此元素上并且用户按下鼠标右键时发生。 (继承自 UIElement。) | |
MouseRightButtonUp | 在鼠标指针悬停于此元素上并且用户释放鼠标右键时发生。 (继承自 UIElement。) | |
MouseUp | 在用户在此元素上释放任意鼠标按钮时发生。 (继承自 UIElement。) | |
MouseWheel | 在鼠标指针悬停于此元素上并且用户滚动鼠标滚轮时发生。 (继承自 UIElement。) | |
PreviewDragEnter | 在输入系统报告将此元素作为拖动目标的基础拖动事件时发生。 (继承自 UIElement。) | |
PreviewDragLeave | 在输入系统报告将此元素作为拖动来源的基础拖动事件时发生。 (继承自 UIElement。) | |
PreviewDragOver | 在输入系统报告将此元素作为潜在放置目标的基础拖动事件时发生。 (继承自 UIElement。) | |
PreviewDrop | 在输入系统报告将此元素作为放置目标的基础放置事件时发生。 (继承自 UIElement。) | |
PreviewGiveFeedback | 在开始拖放操作时发生。 (继承自 UIElement。) | |
PreviewGotKeyboardFocus | 在键盘焦点位于此元素上时发生。 (继承自 UIElement。) | |
PreviewKeyDown | 在焦点位于此元素上并且用户按下键时发生。 (继承自 UIElement。) | |
PreviewKeyUp | 在焦点位于此元素上并且用户释放键时发生。 (继承自 UIElement。) | |
PreviewLostKeyboardFocus | 在键盘焦点不再位于此元素上时发生。 (继承自 UIElement。) | |
PreviewMouseDown | 在指针悬停于此元素上并且用户按下任意鼠标按钮时发生。 (继承自 UIElement。) | |
PreviewMouseLeftButtonDown | 在鼠标指针悬停于此元素上并且用户按下鼠标左键时发生。 (继承自 UIElement。) | |
PreviewMouseLeftButtonUp | 在鼠标指针悬停于此元素上并且用户释放鼠标左键时发生。 (继承自 UIElement。) | |
PreviewMouseMove | 在鼠标指针悬停于此元素上并且用户移动该鼠标指针时发生。 (继承自 UIElement。) | |
PreviewMouseRightButtonDown | 在鼠标指针悬停于此元素上并且用户按下鼠标右键时发生。 (继承自 UIElement。) | |
PreviewMouseRightButtonUp | 在鼠标指针悬停于此元素上并且用户释放鼠标右键时发生。 (继承自 UIElement。) | |
PreviewMouseUp | 在鼠标指针悬停于此元素上并且用户释放任意鼠标按钮时发生。 (继承自 UIElement。) | |
PreviewMouseWheel | 在鼠标指针悬停于此元素上并且用户滚动鼠标滚轮时发生。 (继承自 UIElement。) | |
PreviewQueryContinueDrag | 在拖放操作过程中键盘或鼠标按钮的状态发生变化时发生。 (继承自 UIElement。) | |
PreviewStylusButtonDown | 在指针悬停于此元素上并且用户按下触笔按钮时发生。 (继承自 UIElement。) | |
PreviewStylusButtonUp | 在指针悬停于此元素上并且用户释放触笔按钮时发生。 (继承自 UIElement。) | |
PreviewStylusDown | 在触笔悬停于此元素上并接触数字化仪时发生。 (继承自 UIElement。) | |
PreviewStylusInAirMove | 在触笔掠过元素但并未实际接触数字化仪时发生。 (继承自 UIElement。) | |
PreviewStylusInRange | 在触笔悬停于此元素上方并位于数字化仪的检测范围之内时发生。 (继承自 UIElement。) | |
PreviewStylusMove | 在触笔掠过元素时发生。若要引发此事件,在数字化仪检测到触笔时必须移动触笔;否则,将改为引发 PreviewStylusInAirMove。 (继承自 UIElement。) | |
PreviewStylusOutOfRange | 当触笔距离要检测的数字化仪过远时发生。 (继承自 UIElement。) | |
PreviewStylusSystemGesture | 在用户执行若干触笔笔势之一时发生。 (继承自 UIElement。) | |
PreviewStylusUp | 在用户将悬停于此元素上的触笔从数字化仪上移开时发生。 (继承自 UIElement。) | |
PreviewTextInput | 在此元素以与设备无关的方式获取文本时发生。 (继承自 UIElement。) | |
PreviewTouchDown | 当悬停在此元素上方的手指触摸屏幕时发生。 (继承自 UIElement。) | |
PreviewTouchMove | 当悬停在此元素上方的手指在屏幕上移动时发生。 (继承自 UIElement。) | |
PreviewTouchUp | 当悬停在此元素上方的手指从屏幕上移开时发生。 (继承自 UIElement。) | |
QueryContinueDrag | 在拖放操作过程中键盘或鼠标按钮的状态发生变化时发生。 (继承自 UIElement。) | |
QueryCursor | 在请求显示光标时发生。每次鼠标指针移至新位置时都会在一个元素上引发此事件,这意味着光标对象可能需要根据其新位置进行更改。 (继承自 UIElement。) | |
RequestBringIntoView | 当在此元素上调用 BringIntoView 时发生。 (继承自 FrameworkElement。) | |
SizeChanged | 当此元素上的 ActualHeight 或 ActualWidth 属性的值发生更改时发生。 (继承自 FrameworkElement。) | |
SourceUpdated | 当此元素上的任何现有属性绑定的源值发生更改时发生。 (继承自 FrameworkElement。) | |
StylusButtonDown | 在指针悬停于此元素上并且用户按下触笔按钮时发生。 (继承自 UIElement。) | |
StylusButtonUp | 在指针悬停于此元素上并且用户释放触笔按钮时发生。 (继承自 UIElement。) | |
StylusDown | 在触笔悬停于此元素上并接触数字化仪时发生。 (继承自 UIElement。) | |
StylusEnter | 在触笔进入此元素的边界时发生。 (继承自 UIElement。) | |
StylusInAirMove | 在触笔掠过元素但并未实际接触数字化仪时发生。 (继承自 UIElement。) | |
StylusInRange | 在触笔悬停于此元素上方并位于数字化仪的检测范围之内时发生。 (继承自 UIElement。) | |
StylusLeave | 在触笔离开此元素的边界时发生。 (继承自 UIElement。) | |
StylusMove | 在触笔掠过此元素时发生。若要引发此事件,触笔位于数字化仪上时必须移动。否则,将改为引发 StylusInAirMove。 (继承自 UIElement。) | |
StylusOutOfRange | 在触笔悬停于此元素上方并位于数字化仪的检测范围之外时发生。 (继承自 UIElement。) | |
StylusSystemGesture | 在用户执行若干触笔笔势之一时发生。 (继承自 UIElement。) | |
StylusUp | 在用户将悬停于此元素上的触笔从数字化仪上移开时发生。 (继承自 UIElement。) | |
TargetUpdated | 当此元素上的任何属性绑定的目标值发生更改时发生。 (继承自 FrameworkElement。) | |
TextInput | 在此元素以与设备无关的方式获取文本时发生。 (继承自 UIElement。) | |
ToolTipClosing | 在元素上的任何工具提示关闭之前发生。 (继承自 FrameworkElement。) | |
ToolTipOpening | 当元素上的任意工具提示打开时发生。 (继承自 FrameworkElement。) | |
TouchDown | 当悬停在此元素上方的手指触摸屏幕时发生。 (继承自 UIElement。) | |
TouchEnter | 在触摸屏输入从此元素边界外部移动到其内部时发生。 (继承自 UIElement。) | |
TouchLeave | 在触摸屏输入从此元素边界内部移动到其外部时发生。 (继承自 UIElement。) | |
TouchMove | 当悬停在此元素上方的手指在屏幕上移动时发生。 (继承自 UIElement。) | |
TouchUp | 当悬停在此元素上方的手指从屏幕上移开时发生。 (继承自 UIElement。) | |
Unloaded | 当从加载的元素的元素树中移除元素时发生。 (继承自 FrameworkElement。) |
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<TextBlock Margin="10 10 10 10" Text="Margin 10 10 10 10" />
<TextBlock Margin="30 30 30 30" Text="Margin 30 30 30 30" />
<TextBlock Margin="50 50 50 50" Text="Margin 50 50 50 50" />
<TextBlock Margin="100 100 100 100" Text="Margin 100 100 100 100"/>
</Grid>
可以看到Margin的四个边距都起到了作用,如果你设置了控件的Height和Width,那么默认只有左边距和上边距起作用,这事因为,一般的控件继承自FrameworkElement类,这个类有对齐属性,也就是VerticalAlignment(垂直对其方式)和HorizontalAlignment(水平对其方式),默认垂对齐方式是向上对齐,水平对齐方式是想做,而Margin的值是依据对齐方式起作用的,多以控件的Width和Height设为固定值时,空间的大小就不会随着Margin的值调整,也就无法做到,上下左右都满足。所以就出现了左和上起作用的现象。但是有一个前提,就是Margin的值不能太大,比如VerticalAlignment=“Top” ,但是如果你的Margin=“10 20 20 1000”就会出问题,Margin=“10 10 10 10”,下边距也是10,无法同时满足上下边距都是10,就会出现top优先,但是过大就会出现布局错误,即使设置了Height属性页没用,控件会被搞到屏幕外面去了,规律是,Margin.left+Margin.Right+控件Width小于父控件的Width+Padding或者Margin.Top+Margin.Bottom+控件Height小于父控件的Height+Padding,按照VerticalAlignment与HorizontalAlignment的设置来决定谁起作用,但是大于的话,就会吧控件挤到屏幕外面或者部分被掩盖
正正常情况下(Margin.left+Margin.Right+控件Width小于父控件的Width+Padding或者Margin.Top+Margin.Bottom+控件Height小于父控件的Height+Padding)对齐方式影响Margin的情况基本如下
VerticalAlignment=“Top” Margin.Top起作用
VerticalAlignment=“Botton”Margin.Bottom起作用
HorizontalAlignment=“Left” Margin.Left起作用
HorizontalAlignment=“Right”Margin.Right起作用
Padding属性和Margin类似,他表示内边距,也就是控件中,子空间与他的距离
如果Margin和Padding都设置了,那就把二者相加
Text属性用来设置显示的内容
其他属性不做介绍了,比如Foreground这种属性,再次出过多介绍没有任何意义,对于初学者来说,首先要掌握的就是空间的显示与布局
事件
Tap事件
Tap事件是当触摸控件时触发的事件,跟点击事件差不多,之所以又这种事件是因为Windows phone手机是触屏的,必须有触摸事件
看如下代码
xaml:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<TextBlock Margin="10 10 10 10" Text="Margin 10 10 10 10" Tap="TextBlock_Tap" ManipulationStarted="TextBlock_ManipulationStarted" ManipulationDelta="TextBlock_ManipulationDelta" ManipulationCompleted="TextBlock_ManipulationCompleted"/>
<TextBlock Margin="30 30 30 30" Text="Margin 30 30 30 30" />
<TextBlock Margin="50 50 50 50" Text="Margin 50 50 50 50" />
<TextBlock Margin="100 100 100 100" Text="Margin 100 100 100 100"/>
</Grid>
c#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
namespace Property
{
public partial class MainPage : PhoneApplicationPage
{
// Constructor
public MainPage()
{
InitializeComponent();
}
string infoStr = "";
private void TextBlock_Tap(object sender, GestureEventArgs e)
{
infoStr += "Tap";
}
private void TextBlock_ManipulationStarted(object sender, ManipulationStartedEventArgs e)
{
infoStr += "Start";
}
private void TextBlock_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
{
infoStr += "Delta";
}
private void TextBlock_ManipulationCompleted(object sender, ManipulationCompletedEventArgs e)
{
string location = string.Format("X:{0},Y:{1}",e.ManipulationOrigin.X.ToString(),e.ManipulationOrigin.Y.ToString());
MessageBox.Show(location);
}
}
}
代码中e.ManipulationOrigin.X和e.ManipulationOrigin.Y分别是滑动后和滑动开始时两个点的距离,X表示X方向的巨鹿,Y表示Y方向的距离,他们的值根据您滑动的方向而定,可正可负,具体在以后的章节中介绍,运行程序,在第一个TextBlock控件上滑动一下,效果如下
其他的一些时间和Win Form或者Web Form上类似了,一看事件名称就知道是什么意思,有关某些控件的特有属性和特有事件,在以后的章节中介绍
我新浪微博的昵称是“@马蔬菜”,多多关注,谢谢