Exemplo n.º 1
0
        private void AddCustomViewLocator()
        {
            _originalLocateForModel = ViewLocator.LocateForModel;

            ViewLocator.LocateForModel = (model, displayLocation, context) =>
            {
                UIElement element;

                switch (model)
                {
                case IOwnerViewLocator ownerViewLocator:
                    element = ownerViewLocator.GetView(context);
                    break;

                case IAutoGenSettingsView _:
                    element = new AutoSettingsView();
                    break;

                default:
                    element = _originalLocateForModel(model, displayLocation, context);
                    break;
                }

                return(element);
            };
        }
        private void AddCustomViewLocator()
        {
            _originalLocateForModel    = ViewLocator.LocateForModel;
            ViewLocator.LocateForModel = (model, displayLocation, context) =>
            {
                var element = _originalLocateForModel(model, displayLocation, context);
                if ((element == null || element is TextBlock) && model is IAutoGenSettingsView)
                {
                    element = new AutoSettingsView();
                }

                return(element);
            };
        }