Example #1
0
        internal static T GetValue <T>(T defaultValue, [CallerMemberName] string propertyName = "")
        {
            try
            {
                if (ApplicationData.Current.LocalSettings.Values.ContainsKey(propertyName))
                {
                    string value = ApplicationData.Current.LocalSettings.Values[propertyName].ToString() ?? string.Empty;

                    if (!string.IsNullOrEmpty(value))
                    {
                        if (typeof(T) == typeof(string))
                        {
                            return((T)(object)value);
                        }
                        else if (typeof(T) == typeof(bool))
                        {
                            if (bool.TryParse(value, out bool result))
                            {
                                return((T)(object)result);
                            }
                        }
                        else if (typeof(T) == typeof(int))
                        {
                            if (int.TryParse(value, out int result))
                            {
                                return((T)(object)result);
                            }
                        }
                        else if (typeof(T) == typeof(double))
                        {
                            if (double.TryParse(value, out double result))
                            {
                                return((T)(object)result);
                            }
                        }
                        else if (typeof(T).IsEnum)
                        {
                            return((T)Enum.Parse(typeof(T), value));
                        }
                        else if (typeof(T) == typeof(BindablePoint))
                        {
                            if (BindablePoint.TryParse(value, out BindablePoint result))
                            {
                                return((T)(object)result);
                            }
                        }
                    }
                }
            }
            catch { }

            return(defaultValue);
        }
Example #2
0
        internal List <INavigationListenerComponent> LoadNavigationListeners(AbstractNavigationComponent navigationComponent)
        {
            List <INavigationListenerComponent> listeners = new List <INavigationListenerComponent>();
            BindablePoint     point             = navigationComponent.GetBindablePointBySystemName(AbstractUiConstants.IAbstractUiNavigationControl_NavigationListeners_BindingPointName);
            BindingController bindingController = new BindingController(this.FactoryContext);
            List <Binding>    bindings          = bindingController.GetByBindablePointId(point.BindablePointId);

            foreach (Binding binding in bindings)
            {
                INavigationListenerComponent component = this.GetObjectByInstanceId(binding.ImplementationId) as INavigationListenerComponent;
                listeners.Add(component);
            }

            return(listeners);
        }
Example #3
0
        public List <IAbstractComponent> LoadChildControls(AbstractContainer container)
        {
            List <IAbstractComponent> children          = new List <IAbstractComponent>();
            BindablePoint             point             = container.GetBindablePointBySystemName(AbstractUiConstants.IAbstractUiContainer_Controls_BindingPointName);
            BindingController         bindingController = new BindingController(this.FactoryContext);
            List <Binding>            bindings          = bindingController.GetByBindablePointId(point.BindablePointId);

            foreach (Binding binding in bindings)
            {
                IAbstractComponent component = this.GetObjectByInstanceId(binding.ImplementationId) as IAbstractComponent;
                component.ParentComponent = container;
                children.Add(component);
            }

            return(children);
        }