Custom Element Binding Window : Window Event « Windows Presentation Foundation « C# / CSharp Tutorial






<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:src="clr-namespace:MyNameSpace.CustomElementBinding" 
        Title="Custom Element Binding Demo">
    <StackPanel>
        <ScrollBar Orientation="Horizontal"
                   Margin="24" 
                   Maximum="100"
                   LargeChange="10"
                   SmallChange="1"  
                   Value="{Binding ElementName=simple, Path=Number,Mode=OneWayToSource}" />

    <src:SimpleElement x:Name="simple" HorizontalAlignment="Center" />
    </StackPanel>
</Window>
//File:Window.xaml.cs
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Media;

namespace MyNameSpace.CustomElementBinding
{
    class SimpleElement : FrameworkElement
    {
        public static DependencyProperty NumberProperty;
        static SimpleElement()
        {
            NumberProperty = DependencyProperty.Register("Number", typeof(double),typeof(SimpleElement),
                    new FrameworkPropertyMetadata(0.0,FrameworkPropertyMetadataOptions.AffectsRender));
        }
        public double Number
        {
            set { SetValue(NumberProperty, value); }
            get { return (double)GetValue(NumberProperty); }
        }
        protected override Size MeasureOverride(Size sizeAvailable)
        {
            return new Size(200, 250);
        }
        protected override void OnRender(DrawingContext dc)    
        {
            dc.DrawText(new FormattedText(Number.ToString(), 
                        CultureInfo.CurrentCulture, FlowDirection.LeftToRight,
                        new Typeface("Times New Roman"), 12, 
                        SystemColors.WindowTextBrush), 
                new Point(0, 0)); 
        }
    }
}
WPF Custom Element Binding Window








24.71.Window Event
24.71.1.Window mouse down eventWindow mouse down event
24.71.2.Window Preview mouse down eventWindow Preview mouse down event
24.71.3.Window mouse up eventWindow mouse up event
24.71.4.Window.DragMoveWindow.DragMove
24.71.5.Window.CommandBindingsWindow.CommandBindings
24.71.6.Use Window Activated and Deactivated event to control a media fileUse Window Activated and Deactivated event to control a media file
24.71.7.Custom Element Binding WindowCustom Element Binding Window
24.71.8.ShutdownMode.OnLastWindowCloseShutdownMode.OnLastWindowClose
24.71.9.Window Loaded eventWindow Loaded event
24.71.10.Close a window with Escape key pressedClose a window with Escape key pressed
24.71.11.Window Closing and Closed eventWindow Closing and Closed event
24.71.12.Create Window and add window closing event handlerCreate Window and add window closing event handler
24.71.13.Do not handle events until Window is fully initialized.Do not handle events until Window is fully initialized.
24.71.14.Window On Mouse move eventWindow On Mouse move event
24.71.15.Window On Mouse up eventWindow On Mouse up event
24.71.16.Window Preview Key EventsWindow Preview Key Events
24.71.17.Listen to Window loaded eventListen to Window loaded event
24.71.18.Listen to window resize event
24.71.19.Retrieving the mouse position relative to controls on a WindowRetrieving the mouse position relative to controls on a Window
24.71.20.Listen to text input event for Window
24.71.21.Get input text from TextCompositionEventArgs.Text
24.71.22.Cancel window closing event