Button 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
对触摸事件做出响应的按钮 View。
public ref class Button : Microsoft::Maui::Controls::View, Microsoft::Maui::Controls::IBorderElement, Microsoft::Maui::Controls::IButtonController, Microsoft::Maui::Controls::IElementConfiguration<Microsoft::Maui::Controls::Button ^>, Microsoft::Maui::Controls::IImageController, Microsoft::Maui::Controls::IImageElement, Microsoft::Maui::Controls::Internals::IFontElement, Microsoft::Maui::Controls::IPaddingElement, Microsoft::Maui::IImageButton, Microsoft::Maui::ITextButton
public class Button : Microsoft.Maui.Controls.View, Microsoft.Maui.Controls.IBorderElement, Microsoft.Maui.Controls.IButtonController, Microsoft.Maui.Controls.IElementConfiguration<Microsoft.Maui.Controls.Button>, Microsoft.Maui.Controls.IImageController, Microsoft.Maui.Controls.IImageElement, Microsoft.Maui.Controls.Internals.IFontElement, Microsoft.Maui.Controls.IPaddingElement, Microsoft.Maui.IImageButton, Microsoft.Maui.ITextButton
type Button = class
inherit View
interface IFontElement
interface IBorderElement
interface IButtonController
interface IViewController
interface IVisualElementController
interface IElementController
interface IElementConfiguration<Button>
interface IPaddingElement
interface IImageController
interface IImageElement
interface IButton
interface IView
interface IElement
interface ITransform
interface IPadding
interface IButtonStroke
interface ITextButton
interface IText
interface ITextStyle
interface IImageButton
interface IImage
interface IImageSourcePart
Public Class Button
Inherits View
Implements IBorderElement, IButtonController, IElementConfiguration(Of Button), IFontElement, IImageButton, IImageController, IImageElement, IPaddingElement, ITextButton
- 继承
- 实现
-
IBorderElement IButtonController IElementConfiguration<Button> IElementController IImageController IImageElement IFontElement IPaddingElement IViewController IVisualElementController IButton IButtonStroke IElement IImage IImageButton IImageSourcePart IPadding IText ITextButton ITextStyle ITransform IView
注解
按钮外观
除了所有 View 对象共有的外观属性外,Button 类还提供 BorderColor、 BorderWidth和 ImageSource 属性。
下面的 XAML 代码片段演示如何使用这些属性创建包含文本“按我!” 的基本按钮 按钮显示的图像显示在布局的起始端,这是从左到右语言的左侧。
<Button Text="Press me!"
Image="icon.png"
BackgroundColor="White"
BorderWidth="2"
BorderColor="Black"
HorizontalOptions="Center"/>
若要使用上述 XAML 显示 icon.png
图像,开发人员必须将其放置在适当的位置,并具有特定于每个平台项目的相应生成操作。 图像主题介绍了这一点以及有关在 Microsoft.Maui.Controls 中使用图像的其他重要详细信息。
按钮事件
按钮分别使用 Pressed、 Released和 事件通知开发人员按下、释放和 Clicked 单击事件。
以下 XAML 将处理程序分配给其中两个按钮事件:
<Button x:Name="PressMeButton"
Text="Press Me!"
Pressed="PressMeButton_Pressed"
Clicked="PressMeButton_Clicked"/>
使用上面的 XAML,代码隐藏文件中的以下事件处理程序在引发这些事件时更改按钮的文本:
private void PressMeButton_Pressed(object sender, EventArgs e)
{
(sender as Button).Text = "You pressed me!";
}
private void PressMeButton_Clicked(object sender, EventArgs e)
{
(sender as Button).Text = "I was just clicked!";
}
命令
按钮的命令 API 允许开发人员运行命令来响应单击的事件。
以下 XAML 指定了在单击按钮时要运行的命令。 命令更新名为 的 modelUpdateCount
视图模型属性,按钮随后使用该属性更新其文本。 (为了完整性,将显示文本绑定。只有命令代码是相关的。) :
<Button Text="{Binding modelUpdateCount, StringFormat='Number of updates to the model: {0:D}'}"
Command="{Binding IncrementLabelCommand}" />
使用上述 XAML,开发人员首先在视图模型上定义 IncrementLabelCommand
属性,并实现稍后用于实例化命令的方法:
public ICommand IncrementLabelCommand { get; private set; }
void IncrementLabel()
{
modelUpdateCount++;
}
其次,开发人员使用 方法初始化 命令 (或操作) :
public ViewModelDemo()
{
IncrementLabelCommand = new Command(IncrementLabel);
}
最后,开发人员必须将main页的构造函数中的绑定上下文设置为实现 属性的视图模型的绑定上下文:
public MainPage()
{
InitializeComponent();
BindingContext = new ViewModelDemo();
}
构造函数
Button() |
初始化 Button 类的新实例。 |
字段
BorderColorProperty |
BorderColor 可绑定属性的后备存储。 |
BorderWidthProperty |
BorderWidth 可绑定属性的后备存储。 |
CharacterSpacingProperty |
CharacterSpacing 可绑定属性的后备存储。 |
CommandParameterProperty |
CommandParameter 可绑定属性的后备存储。 |
CommandProperty |
Command 可绑定属性的后备存储。 |
ContentLayoutProperty |
ContentLayout 可绑定属性的后备存储。 |
ControlsButtonMapper |
已过时.
将抽象属性映射到特定于平台的方法以供进一步处理的属性映射器。 |
CornerRadiusProperty |
CornerRadius 可绑定属性的后备存储。 |
FontAttributesProperty |
FontAttributes 可绑定属性的后备存储。 |
FontAutoScalingEnabledProperty |
FontAutoScalingEnabled 可绑定属性的后备存储。 |
FontFamilyProperty |
FontFamily 可绑定属性的后备存储。 |
FontSizeProperty |
FontSize 可绑定属性的后备存储。 |
ImageSourceProperty |
ImageSource 可绑定属性的后备存储。 |
IsPressedProperty |
IsPressed 可绑定属性的后备存储。 |
LineBreakModeProperty |
LineBreakMode 可绑定属性的后备存储。 |
PaddingProperty |
Padding 可绑定属性的后备存储。 |
propertyMapper |
表示视图的内部 PropertyMapper。 (继承自 View) |
TextColorProperty |
TextColor 可绑定属性的后备存储。 |
TextProperty |
Text 可绑定属性的后备存储。 |
TextTransformProperty |
TextTransform 可绑定属性的后备存储。 |
属性
AnchorX |
获取或设置任何转换操作的中心点的 X 分量,相对于 元素的边界。 这是一种可绑定属性。 (继承自 VisualElement) |
AnchorY |
获取或设置任何转换操作的中心点的 Y 分量,相对于 元素的边界。 这是一种可绑定属性。 (继承自 VisualElement) |
AutomationId |
获取或设置允许自动化框架查找此元素并与其交互的值。 (继承自 Element) |
Background |
获取或设置 Brush 将用于填充元素背景的 。 这是一种可绑定属性。 (继承自 VisualElement) |
BackgroundColor |
获取或设置将 Color 填充元素背景的 。 这是一种可绑定属性。 (继承自 VisualElement) |
Batched |
获取一个值,该值指示对此元素进行了批处理更改。 (继承自 VisualElement) |
Behaviors |
获取与此元素关联的对象列表 Behavior 。 这是一种只读可绑定属性。 (继承自 VisualElement) |
BindingContext |
获取或设置一个 对象,该对象包含属于此 BindableObject的绑定属性的目标属性。 这是一种可绑定属性。 (继承自 BindableObject) |
BorderColor |
获取或设置描述按钮边框笔划颜色的颜色。 这是一种可绑定属性。 |
BorderWidth |
获取或设置边框的宽度(以与设备无关的单位为单位)。 这是一种可绑定属性。 |
Bounds |
获取元素的边界(以与设备无关的单位为单位)。 (继承自 VisualElement) |
CharacterSpacing |
获取或设置在按钮上显示 时 的每个字符 Text 之间的间距。 这是一种可绑定属性。 |
class |
对触摸事件做出响应的按钮 View。 (继承自 NavigableElement) |
ClassId |
获取或设置用于标识语义相似元素集合的值。 (继承自 Element) |
Clip |
指定元素的剪辑区域。 这是一种可绑定属性。 (继承自 VisualElement) |
Command |
获取或设置激活按钮时要调用的命令。 这是一种可绑定属性。 |
CommandParameter |
获取或设置要传递给 Command 属性的参数。
默认值为 |
ContentLayout |
获取或设置一个对象,用于控制按钮图像的位置以及按钮图像和按钮文本之间的间距。 这是一种可绑定属性。 |
CornerRadius |
获取或设置按钮的圆角半径(以与设备无关的单位为单位)。 这是一种可绑定属性。 |
DesiredSize |
获取在布局流程的度量传递过程中此元素计算所得的大小。 (继承自 VisualElement) |
DisableLayout |
获取一个值,该值指示禁用此元素的布局。 (继承自 VisualElement) |
Dispatcher |
获取创建此可绑定对象时可用的调度程序,否则尝试查找最近的可用调度程序 (可能为窗口/应用的) 。 (继承自 BindableObject) |
EffectControlProvider |
供 .NET MAUI 内部使用。 (继承自 Element) |
Effects |
获取或设置将在运行时应用于 元素的样式和属性。 (继承自 Element) |
FlowDirection |
获取或设置布局流方向。 这是一种可绑定属性。 (继承自 VisualElement) |
FontAttributes |
获取或设置一个值,该值指示此按钮的文本字体是加粗、倾斜还是两者都不加粗。 这是一种可绑定属性。 |
FontAutoScalingEnabled |
确定此条目的字体是否应根据操作系统设置自动缩放。 默认值为 |
FontFamily |
获取或设置此条目的文本的字体系列。 这是一种可绑定属性。 |
FontSize |
获取或设置此条目的文本的字体大小。 这是一种可绑定属性。 |
Frame |
获取或设置此元素驻留在屏幕上的帧。 (继承自 VisualElement) |
GestureController |
对触摸事件做出响应的按钮 View。 (继承自 View) |
GestureRecognizers |
与此视图关联的手势识别器的集合。 (继承自 View) |
Handler |
获取或设置 IViewHandler 与此元素关联的 。 (继承自 VisualElement) |
Height |
获取此元素的当前呈现高度。 这是一种只读可绑定属性。 (继承自 VisualElement) |
HeightRequest |
获取或设置此元素的所需高度替代。 这是一种可绑定属性。 (继承自 VisualElement) |
HorizontalOptions |
获取或设置定义 LayoutOptions 元素在布局周期中的布局方式的 。 这是一种可绑定属性。 (继承自 View) |
Id |
获取一个值,该值可用于在应用程序的整个运行过程中唯一标识元素。 (继承自 Element) |
ImageSource |
允许在按钮上显示位图图像。 这是一种可绑定属性。 |
InputTransparent |
获取或设置一个值,该值指示此元素是否在用户交互期间响应命中测试。 这是一种可绑定属性。 (继承自 VisualElement) |
IsEnabled |
获取或设置一个值,该值指示是否在用户界面中启用此元素。 这是一种可绑定属性。 (继承自 VisualElement) |
IsEnabledCore |
对触摸事件做出响应的按钮 View。 |
IsEnabledCore |
此值表示累积 IsEnabled 值。 如果值将更改,重写此属性的所有类型还需要调用 RefreshIsEnabledProperty () 方法。 (继承自 VisualElement) |
IsFocused |
获取一个值,该值指示当前是否聚焦此元素。 这是一种可绑定属性。 (继承自 VisualElement) |
IsInPlatformLayout |
获取或设置一个值,该值指示此元素当前正在经历平台布局周期。 (继承自 VisualElement) |
IsLoaded |
指示元素是否连接到main对象树。 (继承自 VisualElement) |
IsPlatformEnabled |
获取或设置一个值,该值指示是否启用此元素的平台等效元素。 (继承自 VisualElement) |
IsPlatformStateConsistent |
获取或设置一个值,该值指示此元素当前与平台等效元素状态一致。 (继承自 VisualElement) |
IsPressed |
获取当前是否按下该按钮。 |
IsVisible |
获取或设置一个值,该值确定此元素是否在屏幕上可见并占用布局中的空间。 这是一种可绑定属性。 (继承自 VisualElement) |
LineBreakMode |
确定当长度溢出此按钮的大小时如何 Text 显示。 这是一种可绑定属性。 |
LogicalChildren |
已过时.
供 Microsoft.Maui.Controls 平台内部使用。 (继承自 Element) |
Margin |
获取或设置视图的边距。 (继承自 View) |
MaximumHeightRequest |
获取或设置元素在布局期间将请求的最大高度。 这是一种可绑定属性。 (继承自 VisualElement) |
MaximumWidthRequest |
获取或设置元素在布局期间将请求的最大宽度。 这是一种可绑定属性。 (继承自 VisualElement) |
MinimumHeightRequest |
获取或设置元素在布局期间将请求的最小高度。 这是一种可绑定属性。 (继承自 VisualElement) |
MinimumWidthRequest |
获取或设置元素在布局期间将请求的最小宽度。 这是一种可绑定属性。 (继承自 VisualElement) |
Navigation |
对触摸事件做出响应的按钮 View。 (继承自 NavigableElement) |
NavigationProxy |
对触摸事件做出响应的按钮 View。 (继承自 NavigableElement) |
Opacity |
获取或设置呈现元素时应用于元素的不透明度值。 此值的范围是 0 到 1;超出此范围的值将设置为最接近的有效值。 这是一种可绑定属性。 (继承自 VisualElement) |
Padding |
获取或设置按钮的填充。 这是一种可绑定属性。 |
Parent |
获取或设置此元素的父 Element 元素。 (继承自 Element) |
RealParent |
供 .NET MAUI 内部使用。 (继承自 Element) |
Resources |
获取或设置本地资源字典。 (继承自 VisualElement) |
Rotation |
获取或设置呈现元素时围绕 Z 轴(仿射旋转)的旋转角度(以度为单位)。 这是一种可绑定属性。 (继承自 VisualElement) |
RotationX |
获取或设置呈现元素时围绕 X 轴(透视旋转)的旋转角度(以度为单位)。 这是一种可绑定属性。 (继承自 VisualElement) |
RotationY |
获取或设置呈现元素时围绕 Y 轴(透视旋转)的旋转角度(以度为单位)。 这是一种可绑定属性。 (继承自 VisualElement) |
Scale |
获取或设置应用于元素的比例因子。 这是一种可绑定属性。 (继承自 VisualElement) |
ScaleX |
获取或设置要应用于 X 方向的缩放值。 这是一种可绑定属性。 (继承自 VisualElement) |
ScaleY |
获取或设置要应用于 Y 方向的缩放值。 这是一种可绑定属性。 (继承自 VisualElement) |
Shadow |
获取或设置元素投射的阴影效果。 这是一种可绑定属性。 (继承自 VisualElement) |
Style |
对触摸事件做出响应的按钮 View。 (继承自 NavigableElement) |
StyleClass |
对触摸事件做出响应的按钮 View。 (继承自 NavigableElement) |
StyleId |
获取或设置用于唯一地标识元素的用户定义的值。 (继承自 Element) |
Text |
获取或设置显示为按钮内容的文本。
默认值为 |
TextColor |
获取或设置按钮文本的 Color。 这是一种可绑定属性。 |
TextTransform |
将文本转换应用于 Text 此按钮上显示的 。 这是一种可绑定属性。 |
TranslationX |
获取或设置元素的 X 转换增量。 这是一种可绑定属性。 (继承自 VisualElement) |
TranslationY |
获取或设置元素的 Y 转换增量。 这是一种可绑定属性。 (继承自 VisualElement) |
Triggers |
获取与此元素关联的 对象的列表 TriggerBase 。 这是一种只读可绑定属性。 (继承自 VisualElement) |
VerticalOptions |
获取或设置定义 LayoutOptions 元素在布局周期中的布局方式的 。 这是一种可绑定属性。 (继承自 View) |
Visual |
获取或设置替代 IVisual 元素的视觉外观的实现。 这是一种可绑定属性。 (继承自 VisualElement) |
Width |
获取此元素的当前宽度。 这是一种只读可绑定属性。 (继承自 VisualElement) |
WidthRequest |
获取或设置此元素的所需宽度替代。 这是一种可绑定属性。 (继承自 VisualElement) |
Window |
获取 Window 与 元素关联的 。 这是一种只读可绑定属性。 (继承自 VisualElement) |
X |
获取此元素的当前 X 位置。 这是一种只读可绑定属性。 (继承自 VisualElement) |
Y |
获取此元素的当前 Y 位置。 这是一种只读可绑定属性。 (继承自 VisualElement) |
ZIndex |
获取或设置布局中元素的从前到后 z 索引。 这是一种可绑定属性。 (继承自 VisualElement) |
方法
事件
显式接口实现
扩展方法
适用于
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈