aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Statistics/Converters/StringToBoolYesNoNullConverter.cs
blob: f7633a7d0e948d3cda93fa7f5bc9f2075b758a38 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Controls;
using System.Windows.Data;

namespace Tango.MachineStudio.Statistics.Converters
{
    public class StringToBoolYesNoNullConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if(value is bool)
            {
                return (bool)value ? "Yes" : "No";
            }
            return "Null";
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            //throw new NotImplementedException();
            if (value is ComboBoxItem)
            {
                string str_val = ((ComboBoxItem)value).Content.ToString();
                if (str_val.ToUpper() == "NO")
                    return false;
                if (str_val.ToUpper() == "YES")
                    return true;
            }
            return null;
        }
    }
}
ass="w"> public static MainView Instance { get; set; } public MainView() : base() { InitializeComponent(); Instance = this; _loader = TangoIOC.Default.GetInstance<IStudioModuleLoader>() as DefaultStudioModuleLoader; _loader.ModulesLoaded += Loader_ModulesLoaded; } private void Loader_ModulesLoaded(object sender, EventArgs e) { Task.Factory.StartNew(() => { LogManager.Default.Log("Loading modules views..."); var item = TangoIOC.Default.GetInstance<INotificationProvider>().PushTaskItem("Loading Modules..."); var modules = _loader.UserModules.ToList(); ThreadsHelper.InvokeUINow(() => { _loader.UserModules.Clear(); }); Thread.Sleep(1500); foreach (var module in modules) { LogManager.Default.Log("Loading module view '" + module.Name + "'..."); ThreadsHelper.InvokeUI(() => { if (!NavigationControl.Elements.ToList().Exists(x => x.GetType() == module.MainViewType)) { FrameworkElement view = Activator.CreateInstance(module.MainViewType) as FrameworkElement; NavigationControl.SetNavigationName(view, module.Name); NavigationControl.Elements.Add(view); } _loader.UserModules.Add(module); }); UIHelper.DoEvents(); Thread.Sleep(100); } item.Pop(); ThreadsHelper.InvokeUI(() => { TangoIOC.Default.GetInstance<IStudioApplicationManager>().NotifyApplicationReady(); }); }); } private void MenuItem_MouseEnter(object sender, MouseEventArgs e) { menuTheme.IsSubmenuOpen = true; } } }