Example #1
0
        public TopFilterControl()
        {
            Grid LayoutRoot = new Grid();

            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition());
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition());
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition());
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = GridLength.Auto
            });
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = new GridLength(2, GridUnitType.Star)
            });

            LayoutRoot.RowDefinitions.Add(new RowDefinition());
            LayoutRoot.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(24)
            });
            LayoutRoot.RowDefinitions.Add(new RowDefinition());

            // Тип фильтра
            comboFilterType = new TopFilterTypeCombo();
            LayoutRoot.Children.Add(comboFilterType);
            Grid.SetRow(comboFilterType, 1);

            // Количество записей
            numCount = new NumericUpDown()
            {
                Margin = new Thickness(5, 0, 0, 0)
            };
            numCount.Minimum   = 0;
            numCount.Increment = 1;
            numCount.Value     = 10;
            LayoutRoot.Children.Add(numCount);
            Grid.SetRow(numCount, 1);

            // Расставляем контролы в зависимости от культуры
            String culture = Thread.CurrentThread.CurrentUICulture.Name.ToLower();

            if (culture == "ru" || culture == "ru-ru")
            {
                // Количество
                numCount.Margin = new Thickness(0);
                Grid.SetColumn(numCount, 0);
                // Тип фильтра
                LayoutRoot.ColumnDefinitions[1].Width = new GridLength(2, GridUnitType.Star);
                comboFilterType.Margin = new Thickness(5, 0, 0, 0);
                Grid.SetColumn(comboFilterType, 1);

                // Что отбираем
                LayoutRoot.ColumnDefinitions[2].Width = new GridLength(3, GridUnitType.Star);
            }
            else
            {
                // Тип фильтра
                LayoutRoot.ColumnDefinitions[0].Width = new GridLength(2, GridUnitType.Star);
                comboFilterType.Margin = new Thickness(0);
                Grid.SetColumn(comboFilterType, 0);
                // Количество
                numCount.Margin = new Thickness(5, 0, 0, 0);
                Grid.SetColumn(numCount, 1);

                // Что отбираем
                LayoutRoot.ColumnDefinitions[2].Width = new GridLength(2, GridUnitType.Star);
            }

            // Что отбираем
            comboFilterTarget = new TopFilterTargetCombo()
            {
                Margin = new Thickness(5, 0, 0, 0)
            };
            LayoutRoot.Children.Add(comboFilterTarget);
            Grid.SetColumn(comboFilterTarget, 2);
            Grid.SetRow(comboFilterTarget, 1);

            // Текст "по"
            TextBlock lblBy = new TextBlock()
            {
                Text = Localization.Filter_Label_By, TextAlignment = TextAlignment.Center, VerticalAlignment = VerticalAlignment.Bottom, Margin = new Thickness(5, 0, 0, 0)
            };

            LayoutRoot.Children.Add(lblBy);
            Grid.SetColumn(lblBy, 3);
            Grid.SetRow(lblBy, 1);

            // Мера куба
            comboMeasure = new MeasuresCombo()
            {
                Margin = new Thickness(5, 0, 0, 0)
            };
            LayoutRoot.Children.Add(comboMeasure);
            Grid.SetColumn(comboMeasure, 4);
            Grid.SetRow(comboMeasure, 1);

            //Width = 500;
            this.Content = LayoutRoot;
        }
        public TopFilterControl()
        {
            Grid LayoutRoot = new Grid();

            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition());
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition());
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition());
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition() { Width = GridLength.Auto });
            LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(2, GridUnitType.Star) });

            LayoutRoot.RowDefinitions.Add(new RowDefinition());
            LayoutRoot.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(24) });
            LayoutRoot.RowDefinitions.Add(new RowDefinition());

            // Тип фильтра
            comboFilterType = new TopFilterTypeCombo();
            LayoutRoot.Children.Add(comboFilterType);
            Grid.SetRow(comboFilterType, 1);

            // Количество записей
            numCount = new NumericUpDown() { Margin = new Thickness(5,0,0,0) };
            numCount.Minimum = 0;
            numCount.Increment = 1;
            numCount.Value = 10;
            LayoutRoot.Children.Add(numCount);
            Grid.SetRow(numCount, 1);

            // Расставляем контролы в зависимости от культуры
            String culture = Thread.CurrentThread.CurrentUICulture.Name.ToLower();
            if (culture == "ru" || culture == "ru-ru")
            {
                // Количество
                numCount.Margin = new Thickness(0);
                Grid.SetColumn(numCount, 0);
                // Тип фильтра
                LayoutRoot.ColumnDefinitions[1].Width = new GridLength(2, GridUnitType.Star);
                comboFilterType.Margin = new Thickness(5, 0, 0, 0);
                Grid.SetColumn(comboFilterType, 1);

                // Что отбираем
                LayoutRoot.ColumnDefinitions[2].Width = new GridLength(3, GridUnitType.Star);
            }
            else
            {
                // Тип фильтра
                LayoutRoot.ColumnDefinitions[0].Width = new GridLength(2, GridUnitType.Star);
                comboFilterType.Margin = new Thickness(0);
                Grid.SetColumn(comboFilterType, 0);
                // Количество
                numCount.Margin = new Thickness(5, 0, 0, 0);
                Grid.SetColumn(numCount, 1);

                // Что отбираем
                LayoutRoot.ColumnDefinitions[2].Width = new GridLength(2, GridUnitType.Star);
            }

            // Что отбираем
            comboFilterTarget = new TopFilterTargetCombo() { Margin = new Thickness(5, 0, 0, 0) };
            LayoutRoot.Children.Add(comboFilterTarget);
            Grid.SetColumn(comboFilterTarget, 2);
            Grid.SetRow(comboFilterTarget, 1);

            // Текст "по"
            TextBlock lblBy = new TextBlock() { Text = Localization.Filter_Label_By, TextAlignment = TextAlignment.Center, VerticalAlignment = VerticalAlignment.Bottom, Margin = new Thickness(5, 0, 0, 0) };
            LayoutRoot.Children.Add(lblBy);
            Grid.SetColumn(lblBy, 3);
            Grid.SetRow(lblBy, 1);

            // Мера куба
            comboMeasure = new MeasuresCombo() { Margin = new Thickness(5, 0, 0, 0) }; 
            LayoutRoot.Children.Add(comboMeasure);
            Grid.SetColumn(comboMeasure, 4);
            Grid.SetRow(comboMeasure, 1);
            
            //Width = 500;
            this.Content = LayoutRoot;
        }