aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.SharedUI/Controls/SearchComboBox.cs
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/Controls/SearchComboBox.cs
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/Controls/SearchComboBox.cs')
-rw-r--r--Software/Visual_Studio/Tango.SharedUI/Controls/SearchComboBox.cs24
1 files changed, 20 insertions, 4 deletions
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;