Add button to Canvas : Canvas « Containers « Silverlight






Add button to Canvas

Add button to Canvas
    

<UserControl x:Class='SilverlightApplication3.MainPage'
    xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' 
    xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'
    xmlns:d='http://schemas.microsoft.com/expression/blend/2008' 
    xmlns:mc='http://schemas.openxmlformats.org/markup-compatibility/2006' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>
    <Canvas x:Name="myCanvas">
        <Button x:Name="myButton" Content="Hello" Canvas.Left="10" Canvas.Top="10" />
        <Button x:Name="Another" Content="Add Another" Canvas.Left="10" Canvas.Top="50" />
        <CheckBox x:Name="RushOrder" Content="Rush" Canvas.Left="50" Canvas.Top="20" FontSize="18" />
    </Canvas>
</UserControl>
//File:Page.xaml.cs


using System;
using System.Windows;
using System.Windows.Controls;

namespace SilverlightApplication3
{
   public partial class MainPage : UserControl
   {
      private double newButtonPosition = 100.0;
      public MainPage()
      {
         InitializeComponent();
         Loaded += new RoutedEventHandler( Page_Loaded );
      }

      void Page_Loaded( object sender, RoutedEventArgs e )
      {
         myButton.Click += new RoutedEventHandler( myButton_Click );
         Another.Click += new RoutedEventHandler( Another_Click );
         RushOrder.Checked += new RoutedEventHandler( RushOrder_Changed );
         RushOrder.Unchecked += new RoutedEventHandler(RushOrder_Changed);
      }

      void Another_Click( object sender, RoutedEventArgs e )
      {
         Button b = new Button();
         b.Content = "AAA";
         b.SetValue( Canvas.LeftProperty, 10.0 );
         b.SetValue(Canvas.TopProperty, this.newButtonPosition );
         this.newButtonPosition += 30.0;
         b.Width = 100;
         b.Height = 20;
         b.Click += new RoutedEventHandler( new_button_click );
         myCanvas.Children.Add( b );
      }

      void new_button_click( object sender, RoutedEventArgs e )
      {
         Button btn = sender as Button;
         btn.Content = "B";
         btn.IsEnabled = false;
      }

      void RushOrder_Changed( object sender, RoutedEventArgs e )
      {
         if ( RushOrder.IsChecked == true )
         {
            RushOrder.Content = "A";
         }
         else
         {
            RushOrder.Content = "B";
         }
      }

      void myButton_Click( object sender, RoutedEventArgs e )
      {
         throw new NotImplementedException();
      }
   }
}

   
    
    
    
  








Related examples in the same category

1.Positioning UI Elements with a CanvasPositioning UI Elements with a Canvas
2.A Simple Canvas Control and Three Image ControlsA Simple Canvas Control and Three Image Controls
3.Use tag rather than attribute to set canvas background
4.The Canvas.ZIndex is based on a number starting with 0 being the farthest backThe Canvas.ZIndex is based on a number starting with 0 being the farthest back
5.Create Canvas controls that contain other controls and even nest them in other Canvas or Grid controls.Create Canvas controls that contain other controls and even nest them in other Canvas or Grid controls.
6.Nested Canvas Objects
7.To draw a rectangle, specify its Canvas.Top, Canvas.Left, Width, Height, and Fill colorTo draw a rectangle, specify its Canvas.Top, Canvas.Left, Width, Height, and Fill color
8.A basic Canvas elementA basic Canvas element
9.A basic Canvas with some content.A basic Canvas with some content.
10.Simple Canvas Layout
11.Set control position for Canvas
12.Get position on a Canvas with Canvas.GetLeft
13.Canvas dependantCanvas dependant
14.Canvas without Viewbox
15.Adding Rectangles to CanvasAdding Rectangles to Canvas
16.Put text on CanvasPut text on Canvas
17.Put control into a CanvasPut control into a Canvas
18.Canvas loaded eventCanvas loaded event
19.Set Canvas background to WhiteSet Canvas background to White
20.Add Thickness for Padding