Introduction
Button controls are Silverlight controls which in the common scenario respond in some way to the user who is clicking on them. There are a lot of button controls: Button, HyperlinkButton, RepeatButton, ToggleButton, CheckBox, Radio Button.Overview
Four button controls derive from the base ButtonBase class: Button, HyperlinkButton, RepeatButton, and ToggleButton. TheToggleButton is a base class for the CheckBox and RadioButton controls but it can also be used as a standalone control. There are two descendants of the Button class named CalendarButton and CalendarDayButton.
The most important member of the ButtonBase class is the Click event. It occurs when a user clicks on the button control. For example:
XAML:
<UserControl x:Class="ButtonControls.Page"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="200" Height="100">
<Canvas x:Name="cnvLayoutRoot" Background="White">
<TextBlock x:Name="tblText" Canvas.Top="20" Canvas.Left="30" Text="Not clicked yet."></TextBlock>
<Button x:Name="btnTest" Canvas.Top="60" Canvas.Left="30" Click="btnTest_Click"Content="Click me!"></Button>
</Canvas>
</UserControl>private void btnTest_Click( object sender, RoutedEventArgs e )
{
this.tblText.Text = "The button was clicked.";
}<Button ClickMode="Release" x:Name="btnTest" Canvas.Top="60" Canvas.Left="30"Click="btnTest_Click" Content="Click me!"></Button>
Setting this property to Press causes the event to occur immediately when you press the mouse button, for example:<Button ClickMode="Press" x:Name="btnTest" Canvas.Top="60" Canvas.Left="30" Click="btnTest_Click"Content="Click me!"></Button>
Setting this property to Hover causes the event to occur when you move over the Button with the mouse:<Button ClickMode="Hover" x:Name="btnTest" Canvas.Top="60" Canvas.Left="30" Click="btnTest_Click"Content="Click me!"></Button>
There are some other useful properties:The IsFocused property gets a value indicating whether the control is focused.
The IsMouseOver property determines if the mouse pointer is over the control.
The IsPressed property indicates if the Button is currently pressed.
Conclusion
This article covers the key features of the ButtonBase class which are inherited in all button controls. It targets the developer who has just started withthe new Silverlight 2 controls. Any comments are welcome.
Download Source Code
By
P.Purushothaman









