private void AddFieldView(int currRow, IViewComponent childView, ViewBuildersCollection viewBuilders)
 {
     if (childView.UiHint == "RowsPanel")
     {
         var newCtrl = new RowsPanelView();
         newCtrl.SetViewComponent((IPanelViewModel)childView, viewBuilders);
         Grid.SetRow(newCtrl, currRow);
         Grid.SetColumn(newCtrl, 1);
         Grid.SetColumnSpan(newCtrl, 4);
         ChildrenViewsContainer.Children.Add(newCtrl);
     }
     else
     {
         var viewBuilder = viewBuilders.GetBuilder(childView.UiHint);
         if (viewBuilder != null)
         {
             var newCtrl = viewBuilder.ViewFactory(childView);
             if (newCtrl != null)
             {
                 Grid.SetRow(newCtrl, currRow);
                 Grid.SetColumn(newCtrl, 1);
                 if (childView.UiHint == "PivotGridList")
                 {
                     Grid.SetColumnSpan(newCtrl, 4);
                 }
                 ChildrenViewsContainer.Children.Add(newCtrl);
             }
         }
     }
 }
Пример #2
0
        private static UserControl CreateField(IViewComponent childView, ViewBuildersCollection viewBuilders, Grid ChildrenViewsContainer)
        {
            UserControl newCtrl;

            if (childView.UiHint == "RowsPanel")
            {
                newCtrl = new RowsPanelView();
                ((RowsPanelView)newCtrl).SetViewComponent((IPanelViewModel)childView, viewBuilders);
                ChildrenViewsContainer.Children.Add(newCtrl);
            }
            else if (childView.UiHint == "ColumnsPanel")
            {
                newCtrl = new ColumnsPanelView();
                ((ColumnsPanelView)newCtrl).SetViewComponent((IPanelViewModel)childView, viewBuilders);
                ChildrenViewsContainer.Children.Add(newCtrl);
            }
            else
            {
                newCtrl = viewBuilders.GetBuilder(childView.UiHint).ViewFactory(childView);
                if (newCtrl != null)
                {
                    ChildrenViewsContainer.Children.Add(newCtrl);
                }
            }

            return(newCtrl);
        }
Пример #3
0
        private ScreenManager SetupFramework()
        {
            var screenManager = this.tabsManager.GetScreenManager();

            View.Wpf.Builders.ViewBuildersCollection viewBuilders = new ViewBuildersCollection();
            viewBuilders.AddDefaultViewBuilders();
            viewBuilders.AddSyncfusionViewBuilders();
            this.tabsManager.SetupManager(viewBuilders);
            return(screenManager);
        }
Пример #4
0
        public static void AddFieldViewAsRow(int currRow, IViewComponent childView, ViewBuildersCollection viewBuilders, Grid ChildrenViewsContainer)
        {
            UserControl newCtrl = null;

            newCtrl = CreateField(childView, viewBuilders, ChildrenViewsContainer);
            if (newCtrl != null)
            {
                Grid.SetRow(newCtrl, currRow);
                Grid.SetColumn(newCtrl, 1);
            }
        }
        public void SetViewComponent(IPanelViewModel panelView, ViewBuildersCollection viewBuilders)
        {
            this.BindingContext = panelView;
            var children = panelView.GetChildren();
            int currRow  = 0;

            foreach (var childView in children)
            {
                AddRow();
                AddRow();
                AddLabelView(currRow, childView);
                AddFieldView(currRow, childView, viewBuilders);
                currRow += 2;
            }
        }
Пример #6
0
        public void SetViewComponent(IPanelViewModel panelView, ViewBuildersCollection viewBuilders)
        {
            this.DataContext = panelView;
            var children = panelView.GetChildren();
            int currRow  = 0;

            foreach (var childView in children)
            {
                AddRow();
                AddRow();
                AddLabelView(currRow, childView);
                PanelHelper.AddFieldViewAsRow(currRow, childView, viewBuilders, ChildrenViewsContainer);
                //AddFieldView(currRow, childView, viewBuilders);
                currRow += 2;
            }
        }
        public XamarinSamplePage()
        {
            InitializeComponent();

            _viewBuilders = new ViewBuildersCollection();
            _viewBuilders.AddDefaultViewBuilders();
            var screenManager = new ScreenManager();
            var dialogService = new DialogService();

            var viewModel     = SalesHelpers.SampleViewModel(dialogService, screenManager);
            var viewModelBase = viewModel.InitNoScreen();
            var docContainer  = new DocView();

            docContainer.SetDoc(viewModelBase, _viewBuilders, "FirstScreenDummy");

            //stackContainer.Children.Add(docContainer);
        }
        public void SetViewComponent(IPanelViewModel panelView, ViewBuildersCollection viewBuilders)
        {
            this.DataContext = panelView;
            var children = panelView.GetChildren();
            int currCol  = 1;

            AddPadColumn(3);
            foreach (var childView in children)
            {
                if (currCol > 1)
                {
                    AddPadColumn(1);
                }
                AddColumn();
                AddLabelView(currCol, childView);
                PanelHelper.AddFieldViewAsCol(currCol, childView, viewBuilders, ChildrenViewsContainer);
                currCol += 2;
            }
            AddPadColumn(3);
        }
Пример #9
0
 public void SetupManager(ViewBuildersCollection viewBuilders)
 {
     _viewBuilders = viewBuilders;
 }
Пример #10
0
 public void SetDoc(IDocViewModel docModel, ViewBuildersCollection _viewBuilders, string ScreenId)
 {
     this.BindingContext = docModel;
     fieldsContainer.SetViewComponent(docModel.GetRootView(), _viewBuilders);
 }
Пример #11
0
        //private void UserControl_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
        //{
        //    var newDoc = e.NewValue as IDocViewModel;
        //    if (newDoc != null)
        //    {
        //        fieldsContainer.SetViewComponent(newDoc.GetRootView());
        //    }
        //}

        internal void SetDoc(IDocViewModel docModel, ViewBuildersCollection _viewBuilders, string ScreenId)
        {
            DialogHostContainer.Identifier = ScreenId;
            fieldsContainer.SetViewComponent(docModel.GetRootView(), _viewBuilders);
            this.DataContext = docModel;
        }