aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.SharedUI
diff options
context:
space:
mode:
authorMirta <mirta@twine-s.com>2020-11-23 16:13:53 +0200
committerMirta <mirta@twine-s.com>2020-11-23 16:13:53 +0200
commit91c007adced573e09b77ab4be4a5aba623a816cc (patch)
tree250221fc2def7d59f1393be8394f766faf576656 /Software/Visual_Studio/Tango.SharedUI
parent4e9af2b852eb3b9eecfa09e9bc76869558e183cb (diff)
parent50a3c0b857b4aa88a9e3970d69256f12b5b24eb8 (diff)
downloadTango-91c007adced573e09b77ab4be4a5aba623a816cc.tar.gz
Tango-91c007adced573e09b77ab4be4a5aba623a816cc.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Visual_Studio/Tango.SharedUI')
-rw-r--r--Software/Visual_Studio/Tango.SharedUI/Controls/NavigationControl.cs10
-rw-r--r--Software/Visual_Studio/Tango.SharedUI/Controls/SearchComboBox.cs24
-rw-r--r--Software/Visual_Studio/Tango.SharedUI/Converters/EnumToItemsSourceConverter.cs13
3 files changed, 40 insertions, 7 deletions
diff --git a/Software/Visual_Studio/Tango.SharedUI/Controls/NavigationControl.cs b/Software/Visual_Studio/Tango.SharedUI/Controls/NavigationControl.cs
index 879401c1b..cefdbbfd6 100644
--- a/Software/Visual_Studio/Tango.SharedUI/Controls/NavigationControl.cs
+++ b/Software/Visual_Studio/Tango.SharedUI/Controls/NavigationControl.cs
@@ -252,7 +252,13 @@ namespace Tango.SharedUI.Controls
public static readonly DependencyProperty KeepElementsAttachedProperty =
DependencyProperty.Register("KeepElementsAttached", typeof(bool), typeof(NavigationControl), new PropertyMetadata(false));
-
+ public bool GalleryMode
+ {
+ get { return (bool)GetValue(GalleryModeProperty); }
+ set { SetValue(GalleryModeProperty, value); }
+ }
+ public static readonly DependencyProperty GalleryModeProperty =
+ DependencyProperty.Register("GalleryMode", typeof(bool), typeof(NavigationControl), new PropertyMetadata(false));
public int SelectedIndex
{
@@ -551,7 +557,7 @@ namespace Tango.SharedUI.Controls
break;
case TransitionTypes.Slide:
- if (toIndex > fromIndex)
+ if (toIndex > fromIndex || GalleryMode)
{
fromAnimation.From = 0;
fromAnimation.To = -ActualWidth;
diff --git a/Software/Visual_Studio/Tango.SharedUI/Controls/SearchComboBox.cs b/Software/Visual_Studio/Tango.SharedUI/Controls/SearchComboBox.cs
index 583d7b810..1f2856a32 100644
--- a/Software/Visual_Studio/Tango.SharedUI/Controls/SearchComboBox.cs
+++ b/Software/Visual_Studio/Tango.SharedUI/Controls/SearchComboBox.cs
@@ -12,6 +12,7 @@ using System.Windows.Input;
using System.Linq;
using System.Windows.Media;
using System.Windows.Threading;
+using Tango.Core.ExtensionMethods;
namespace Tango.SharedUI.Controls
{
@@ -73,6 +74,11 @@ namespace Tango.SharedUI.Controls
{
IsOpened = false;
SelectedItem = _listBox.SelectedItem;
+
+ if (SelectedValuePath.IsNotNullOrEmpty() && SelectedItem != null)
+ {
+ SelectedValue = SelectedItem.GetPropertyValueByPath(SelectedValuePath);
+ }
}
else if (e.Key == Key.Up && _listBox.SelectedIndex == 0)
{
@@ -120,6 +126,11 @@ namespace Tango.SharedUI.Controls
{
IsOpened = false;
SelectedItem = _listBox.SelectedItem;
+
+ if (SelectedValuePath.IsNotNullOrEmpty() && SelectedItem != null)
+ {
+ SelectedValue = SelectedItem.GetPropertyValueByPath(SelectedValuePath);
+ }
}
}
}
@@ -152,12 +163,17 @@ namespace Tango.SharedUI.Controls
if (x != null)
{
- var prop = x.GetType().GetProperty(SearchProperty, System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance);
- if (prop != null)
+ if (!String.IsNullOrWhiteSpace(SearchProperty))
{
- String propValue = prop.GetValue(x).ToString();
- return propValue.ToLower().Contains(SearchFilter.ToLower());
+ var prop = x.GetType().GetProperty(SearchProperty, System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance);
+ if (prop != null)
+ {
+ String propValue = prop.GetValue(x).ToString();
+ return propValue.ToLower().Contains(SearchFilter.ToLower());
+ }
}
+
+ return x.ToStringSafe().ToLower().Contains(SearchFilter.ToLower());
}
return false;
diff --git a/Software/Visual_Studio/Tango.SharedUI/Converters/EnumToItemsSourceConverter.cs b/Software/Visual_Studio/Tango.SharedUI/Converters/EnumToItemsSourceConverter.cs
index c551f7d49..5c725e524 100644
--- a/Software/Visual_Studio/Tango.SharedUI/Converters/EnumToItemsSourceConverter.cs
+++ b/Software/Visual_Studio/Tango.SharedUI/Converters/EnumToItemsSourceConverter.cs
@@ -10,6 +10,17 @@ namespace Tango.SharedUI.Converters
{
public class EnumToItemsSourceConverter : IValueConverter
{
+ public class EnumValue
+ {
+ public Object Value { get; set; }
+ public String DisplayName { get; set; }
+
+ public override string ToString()
+ {
+ return DisplayName;
+ }
+ }
+
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
Type result = value as Type;
@@ -20,7 +31,7 @@ namespace Tango.SharedUI.Converters
}
else
{
- return Enum.GetValues(result).Cast<object>().Select(e => new { Value = e, DisplayName = (e as Enum).ToDescription() }).ToList();
+ return Enum.GetValues(result).Cast<object>().Select(e => new EnumValue() { Value = e, DisplayName = (e as Enum).ToDescription() }).ToList();
}
}