From fc8a05358a92cc3c77c5f1e30d536807ef0614fd Mon Sep 17 00:00:00 2001 From: Victoria Plitt Date: Mon, 8 Apr 2019 13:49:55 +0300 Subject: were added scripting projects --- .../Scripting/TestApp/MainWindow.xaml.cs | 77 ++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 Software/Visual_Studio/Scripting/TestApp/MainWindow.xaml.cs (limited to 'Software/Visual_Studio/Scripting/TestApp/MainWindow.xaml.cs') diff --git a/Software/Visual_Studio/Scripting/TestApp/MainWindow.xaml.cs b/Software/Visual_Studio/Scripting/TestApp/MainWindow.xaml.cs new file mode 100644 index 000000000..8ae84b20e --- /dev/null +++ b/Software/Visual_Studio/Scripting/TestApp/MainWindow.xaml.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +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; +using Tango.Scripting; + +namespace TestApp +{ + /// + /// Interaction logic for MainWindow.xaml + /// + public partial class MainWindow : Window + { + private IScriptingEngine _engine; + private ScriptSession _session; + + public MainWindow() + { + InitializeComponent(); + + _engine = new ScriptingEngine(); + } + + private async void Button_Click(object sender, RoutedEventArgs e) + { + Script s = new Script(); + s.Code = +@" +using System; +using System.Windows.Forms; + +MessageBox.Show(""Hi Roy""); +"; + + try + { + _session = await _engine.Run(s); + _session.StateChanged += Session_StateChanged; + } + catch (Exception ex) + { + MessageBox.Show(ex.ToString()); + } + } + + private void Session_StateChanged(object sender, ScriptSessionStateChangedEventArgs e) + { + if (e.State == ScriptSessionState.Completed) + { + MessageBox.Show(e.ReturnValue.ToString()); + } + else if (e.State == ScriptSessionState.Aborted) + { + MessageBox.Show("Aborted"); + } + else if (e.State == ScriptSessionState.Failed) + { + MessageBox.Show(e.Exception.ToString()); + } + } + + private void Button_Click_1(object sender, RoutedEventArgs e) + { + _session.Abort(); + } + } +} -- cgit v1.3.1