|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace RxDraw
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
private IDisposable rxPanelSubcription;
public MainWindow()
{
InitializeComponent();
this.Loaded += MainWindow_Loaded;
this.Closing += MainWindow_Closing;
}
private void MainWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
try
{
rxPanelSubcription.Dispose();
}
catch
{
}
}
private void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
rxPanelSubcription = rxPanel.MouseMoves.Subscribe(SubscriptionMethod);
}
private void SubscriptionMethod(Polyline rxPanelPolyline)
{
canvAutoDrawn.Children.Add(CreateLineFromOther(rxPanelPolyline));
}
private Polyline CreateLineFromOther(Polyline existingLine)
{
Polyline polyline = new Polyline();
polyline.StrokeThickness = 2;
polyline.Stroke = Brushes.Black;
foreach (Point point in existingLine.Points)
{
polyline.Points.Add(new Point(point.X, point.Y));
}
return polyline;
}
private void ReStartSubscription_Click(object sender, RoutedEventArgs e)
{
rxPanelSubcription = rxPanel.MouseMoves.Subscribe(SubscriptionMethod);
BtnRestart.IsEnabled = false;
BtnEnd.IsEnabled = true;
}
private void EndSubscription_Click(object sender, RoutedEventArgs e)
{
rxPanelSubcription.Dispose();
BtnRestart.IsEnabled = true;
BtnEnd.IsEnabled = false;
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I currently hold the following qualifications (amongst others, I also studied Music Technology and Electronics, for my sins)
- MSc (Passed with distinctions), in Information Technology for E-Commerce
- BSc Hons (1st class) in Computer Science & Artificial Intelligence
Both of these at Sussex University UK.
Award(s)
I am lucky enough to have won a few awards for Zany Crazy code articles over the years
- Microsoft C# MVP 2016
- Codeproject MVP 2016
- Microsoft C# MVP 2015
- Codeproject MVP 2015
- Microsoft C# MVP 2014
- Codeproject MVP 2014
- Microsoft C# MVP 2013
- Codeproject MVP 2013
- Microsoft C# MVP 2012
- Codeproject MVP 2012
- Microsoft C# MVP 2011
- Codeproject MVP 2011
- Microsoft C# MVP 2010
- Codeproject MVP 2010
- Microsoft C# MVP 2009
- Codeproject MVP 2009
- Microsoft C# MVP 2008
- Codeproject MVP 2008
- And numerous codeproject awards which you can see over at my blog