Exemple #1
0
        private Tuple <Grid, DesignPatternParameter> GetParameterGrid(DesignPatternParameter dpParameter)
        {
            var grids = (from p in ControlsGridView.Children
                         where p is Grid
                         select p as Grid).ToList();

            var parameterGrid = (from g in grids
                                 where g.Name == dpParameter.Name
                                 select new Tuple <Grid, DesignPatternParameter>(g, dpParameter)).FirstOrDefault();

            return(parameterGrid);
        }
Exemple #2
0
        private async Task <bool> ValidateTextBoxesMultiParameter(IEnumerable <TextBox> textBoxes, DesignPatternParameter parameter)
        {
            var errorBuilder = new StringBuilder();
            var hasErrors    = false;

            foreach (var item in textBoxes)
            {
                if (String.IsNullOrEmpty(item.Text))
                {
                    errorBuilder.Append(parameter.Description + " " + item.Name.Replace(parameter.Name + "_", "") + " could not be empty");
                    errorBuilder.Append(Environment.NewLine);
                    hasErrors = true;
                }
            }

            if (hasErrors)
            {
                var error = new MessageDialog(errorBuilder.ToString());
                await error.ShowAsync();
            }
            return(!hasErrors);
        }
Exemple #3
0
        private void CreateMultipleParameterGrid(DesignPatternParameter param, int rowNumber)
        {
            //Create the outer Grid to hold the Grid that will contain the list and the buttons
            var parameterGrid = new Grid
            {
                Name = param.Name
            };

            parameterGrid.ColumnDefinitions.Add(new ColumnDefinition());
            parameterGrid.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(2, GridUnitType.Star)
            });
            parameterGrid.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(1, GridUnitType.Star)
            });
            parameterGrid.Loaded += (sender, args) =>
            {
                var g = (Grid)sender;
                var p = (Grid)g.Parent;
                g.MaxHeight = p.ActualHeight;
            };
            parameterGrid.LayoutUpdated += (sender, o) =>
            {
                var g = parameterGrid;
                var p = g.Parent as Grid;
                if (p != null)
                {
                    g.MaxHeight = p.ActualHeight;
                }
            };

            var scroll = new ScrollViewer();

            scroll.VerticalScrollMode          = ScrollMode.Auto;
            scroll.VerticalScrollBarVisibility = ScrollBarVisibility.Auto;
            scroll.Name = param.Name + "list";
            var parameterListGrid = new StackPanel
            {
                Name = param.Name + "list"
            };
            var firstParameterInList = new TextBox
            {
                Name = param.Name + "_1"
            };

            firstParameterInList.LayoutUpdated += (sender, o) => UpdateTextBoxLayout(firstParameterInList);


            parameterListGrid.Children.Add(firstParameterInList);

            scroll.Content = parameterListGrid;

            var addParameterButton = new Button
            {
                Content             = "Add",
                Name                = param.Name + "_add_button",
                HorizontalAlignment = HorizontalAlignment.Right,
                Margin              = new Thickness(15, 15, 75, 15)
            };

            addParameterButton.Click += buttonAdd_Click;
            Grid.SetColumn(addParameterButton, 0);
            Grid.SetRow(addParameterButton, 1);

            parameterGrid.Children.Add(scroll);
            parameterGrid.Children.Add(addParameterButton);

            Grid.SetRow(parameterGrid, rowNumber);
            Grid.SetColumn(parameterGrid, 1);

            ControlsGridView.Children.Add(parameterGrid);
        }