From 95b4e14bc4e06ffb94199f5ec4e0d2d9bebceeff Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Sun, 18 Feb 2018 18:48:16 +0200 Subject: Working on new developer module. --- .../Tango.SharedUI/Controls/MultiSelectDataGrid.cs | 37 +++++++++++++++++++++ .../Tango.SharedUI/Controls/MultiSelectListBox.cs | 38 ++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectDataGrid.cs create mode 100644 Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectListBox.cs (limited to 'Software/Visual_Studio/Tango.SharedUI/Controls') diff --git a/Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectDataGrid.cs b/Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectDataGrid.cs new file mode 100644 index 000000000..0f3032e01 --- /dev/null +++ b/Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectDataGrid.cs @@ -0,0 +1,37 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; + +namespace Tango.SharedUI.Controls +{ + public class MultiSelectDataGrid : DataGrid + { + public IList SelectedItemsList + { + get { return (IList)GetValue(SelectedItemsListProperty); } + set { SetValue(SelectedItemsListProperty, value); } + } + + public static readonly DependencyProperty SelectedItemsListProperty = + DependencyProperty.Register(nameof(SelectedItemsList), typeof(IList), typeof(MultiSelectDataGrid), new PropertyMetadata(null)); + + public MultiSelectDataGrid() { } + + protected override void OnSelectionChanged(SelectionChangedEventArgs e) + { + base.OnSelectionChanged(e); + + SelectedItemsList.Clear(); + + foreach (var item in SelectedItems) + { + SelectedItemsList.Add(item); + } + } + } +} diff --git a/Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectListBox.cs b/Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectListBox.cs new file mode 100644 index 000000000..ca45540fa --- /dev/null +++ b/Software/Visual_Studio/Tango.SharedUI/Controls/MultiSelectListBox.cs @@ -0,0 +1,38 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; + +namespace Tango.SharedUI.Controls +{ + public class MultiSelectListBox : ListBox + { + public IList SelectedItemsList + { + get { return (IList)GetValue(SelectedItemsListProperty); } + set { SetValue(SelectedItemsListProperty, value); } + } + + public static readonly DependencyProperty SelectedItemsListProperty = + DependencyProperty.Register(nameof(SelectedItemsList), typeof(IList), typeof(MultiSelectListBox), new PropertyMetadata(null)); + + public MultiSelectListBox() { } + + protected override void OnSelectionChanged(SelectionChangedEventArgs e) + { + base.OnSelectionChanged(e); + + SelectedItemsList.Clear(); + + foreach (var item in SelectedItems) + { + SelectedItemsList.Add(item); + } + } + } +} -- cgit v1.3.1