当前位置:编程学习 > wap >>

Button类控件

Windows Phone中提供了五种按钮控件,分别为:Button、HyperlinkButton、RadioButton、ToggleButton、RepeatButton。这些控件显示名称的属性都是Content。
 
Button
类似于WinForm中的Button,一样有Click、KeyDown等事件,但是对于MouseEnter等鼠标操作性事件来说在手机上不好控制,所以使用起来还是谨慎些。而与WinForm的控件把不同的是,在C#代码中更改前景色和背景色等的时候Windows Phone必须使用Brush来填充,不能直接指定颜色。
 
HyperlinkButton
表示显示超链接的按钮控件。它一般用来执行页面导航,所以一个重要的属性就是NavigateUri,获取或设置单击 HyperlinkButton 时要导航到的 URI。因此HyperlinkButton的一个重要应用就是页面的导航。另外一个重要属性就是HyperlinkButton.TargetName,获取或设置网页应在其中打开的目标窗口或框架的名称,或 Silverlight 应用程序中要导航到的对象的名称。如果导航到当前 Silverlight 应用程序的外部位置,则 TargetName 属性与标准 HTML TARGET 特性相对应。如果不指定TargetName则使用的路径只能为相对路径。
使用方式:
_blank、_media 或 _search:将链接文档加载到新的空白窗口中。
_parent、_self、_top 或 "":将相应页面加载到在其中单击该链接的窗口(活动窗口)中。它的常用事件就是Click,但是一般不用设置,只要写好NavigateURI就行了。
 
 
RadioButton
这个和WinForm中的控件的用法大致一样,它的作用就是标识一类值中选中一个值,它的一个常用的属性就是GroupName,只要设置了这个属性就可以很好的将一个页面中的某一些类型的值分配到一起。它的一些事件处理就像WinForm中的处理一样,当选项更改时发生,当点击控件时发生等等。但是它添加了一种状态Indeterminate,称作不确定状态,使用IsThreeState 属性获取或设置指示控件是支持两种状态还是三种状态的值。获取或设置指示控件是支持两种状态还是三种状态的值。事件有Checked、Unchecked和Indeterminate,分别是当选中时、,没选中时以及当 ToggleButton 的状态切换到不确定状态时发生。
 
RepeatButton
表示从按下按钮到释放按钮的时间内重复引发其 Click 事件的控件,是一个比较新的控件,在触摸屏界面上很有用,它主要是使用户按住按钮之后不松开,便会执行一个事件,它的Click事件就是在用户按住按钮不松开的前提下使用的,这相当于Button的变种。它有两个重要的属性,
Delay,获取或设置 RepeatButton 被按下后在开始重复单击操作之前等待的时间(以毫秒为单位)。也就是说如果在延迟时间内松开按钮,那么Click事件就被执行一次,其默认值是500毫秒,也就是0.5秒,但要注意进制转换,1000毫秒是1秒;
Interval,获取或设置重复开始后单击操作的重复时间间隔(以毫秒为单位)。默认是33毫秒,也就是用户按住按钮不放,每33毫秒执行一次Click操作。
如果上述两个属性害怕混淆的话,就这样理解,Delay是控制用户点击按钮的,Interval是控制Click执行的。
 
ToggleButton
可切换状态的控件的基类,例如是CheckBox 和 RadioButton的基类。三个主要事件Checked、UnChecked和Indeterminate。
下面这是一些主要的属性及事件的应用的练习。在wp7项目中添加一个新页面,名为ButtonControls,布局及截图为:
<!--LayoutRoot 是包含所有页面内容的根网格-->
    <Grid x:Name="LayoutRoot" Background="Transparent">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>

        <!--TitlePanel 包含应用程序的名称和页标题-->
        <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
            <TextBlock x:Name="ApplicationTitle" Text="我的应用程序" Style="{StaticResource PhoneTextNormalStyle}"/>
            <TextBlock x:Name="PageTitle" Text="页面名称" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
        </StackPanel>

        <!--ContentPanel - 在此处放置其他内容-->
        <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
            <Button Content="Button" Height="72" HorizontalAlignment="Left"
                    Margin="33,26,0,0" Name="button1"
                    VerticalAlignment="Top" Width="208" Click="button1_Click" />
            <HyperlinkButton Content="HyperlinkButton" Height="30"
                             HorizontalAlignment="Left"
                             Margin="33,379,0,0" Name="hyperlinkButton1"
                             VerticalAlignment="Top" Width="200"
                             Click="hyperlinkButton1_Click"/>
            <RepeatButton Height="72" HorizontalAlignment="Left"
                          Margin="33,88,0,0" Name="repeatButton1"
                          VerticalAlignment="Top" Width="335"
                          Content="Repeat" Click="repeatButton1_Click" />
            <ToggleButton Height="83" HorizontalAlignment="Left"
                          Margin="33,244,0,0" Name="toggleButton1"
                          VerticalAlignment="Top" Width="208"
                          IsChecked="True" IsThreeState="True"
                          Click="toggleButton1_Click" Checked="toggleButton1_Checked"
                          Unchecked="toggle

补充:移动开发 , Windows Phone ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,