您的位置:首页 > 其它

精通Silverlight——12.4.2 RepeatButton按钮控件

2008-04-24 17:11 288 查看

  RepeatButton控件派生自Button控件,当鼠标按下RepeatButton时,这个控件能够不断的发送单击事件。RepeatButton的声名代码如下所示。
<uicontrol:RepeatButton Canvas.Top="20" Canvas.Left="0" x:Name="repeatbutton"/>
RepeatButton并没有公开任何自己定义的方法,RepeatButton按钮运行时的效果如图所示。



RepeatButton与Button之间最大的不同在于当用户按下鼠标左键时,RepeatButton重复执行单击事件,而Button控件则只执行一次。
下面的示例程序中,当按着RepeatButton按钮时,矩形会不停的进行移动,从示例可以看到RepeatButton按钮的功能。
示例程序的XAML代码如下所示:
<Canvas x:Name="parentCanvas"
xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Loaded="Page_Loaded"
x:Class="ButtonDemo.Page;assembly=ClientBin/ButtonDemo.dll" xmlns:uicontrol="clr-namespace:Silverlight.Samples.Controls;assembly=ClientBin/Silverlight.Samples.Controls.dll"
Width="640"
Height="480"
Background="White"
>
<!--定义一个矩形-->
<Rectangle x:Name="Rec1" Canvas.Left="100" Canvas.Top="200" Width="100" Height="100" Fill="Red"></Rectangle>
<uicontrol:RepeatButton Canvas.Top="100" Canvas.Left="50" x:Name="repeatleft"/>
</Canvas>
代码定义了一个矩形和一个RepeatButton控件,在后置代码中,为RepeatButton添加如下所示的Click事件。
public void Page_Loaded(object o, EventArgs e)
{
// Required to initialize variables
InitializeComponent();
repeatleft.Click += new EventHandler(button2_Click);
}
//定义RepeatButton单击事件。
void button2_Click(object sender, EventArgs e)
{
//获取矩形的水平位置点。
double cl = (double)Rec1.GetValue(Canvas.LeftProperty);
//将矩形位置点加加一个点。
Rec1.SetValue(Canvas.LeftProperty,cl+1);
}
运行这个示例程序,当鼠标按着RepeatButton不放时,矩形会不停的进行移动,如图所示。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐