Убрать Смещение StackPanel

207
09 апреля 2017, 00:10

До начала ввода текста

После ввода текст бокс

<StackPanel Name="equalsWord"  Width="350" Background="Transparent" HorizontalAlignment="Center" VerticalAlignment="Center">
            <TextBox Name="Search" TextChanged="Search_TextChanged" Background="#EEE"
                 Width="90" 
                 Height="20" 
                 FontSize="30" 
                 FontWeight="Light" 
                 TextAlignment="Center"
                 BorderBrush="#F3E9F1"
                 BorderThickness="3" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" MaxLength="10"/>
            <StackPanel Name="ToList" ></StackPanel>
        </StackPanel>

Код C# происходит при вводе текста в поле.

private void Search_TextChanged(object sender, TextChangedEventArgs e)
        {
            ToList.Children.Clear();
            List<string> NewWord = Word.Where(g => g.Contains(Search.Text)).ToList();
            foreach (var item in NewWord)
            {
                label = new Label();
                label.Height = 40;
                label.BorderBrush = Brushes.Gray;
                label.BorderThickness = new Thickness(1, 0, 1, 0);
                label.FontSize = 20;
                label.MouseEnter += listMouseEnter;
                label.MouseLeave += listMouseLeave;
                label.Background = Brushes.White;
                label.VerticalContentAlignment = VerticalAlignment.Center;
                label.HorizontalContentAlignment = HorizontalAlignment.Left;
                label.Content = item;
                ToList.Children.Add(label);
            }
        }

Метод выборки из таблицы

void SelectDate()
        {
            try
            {
                using (connection = new SqlConnection(connectionString))
                {
                    connection.Open();
                    command = new SqlCommand("select Name from ListOperators", connection);
                    reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        Word.Add(reader["Name"].ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                if (connection != null)
                    connection.Close();
            }
        }

Так вот собственно проблема в том что StackPanel смещается в верх как бы расширяясь в высоту в обе стороны а я хочу что бы она увеличивалась тока в низ то есть добавлялись Label тока в низ под TextBox.

Answer 1
<StackPanel Name="equalsWord"  Width="350" Background="Transparent" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="84,142,83,0">

Если не нравится Margin="84,142,83,0" то замени на grid в % центра экрана

READ ALSO
Обновление Dictionary с опозданием - C#

Обновление Dictionary с опозданием - C#

Есть вот такой метод

197
Миграция в БД С# Core

Миграция в БД С# Core

Не получается произвести миграцию из модели в БДУстанавливаю через Nuget

343
Как сохранить WebSession Awesonium&#39;a в c# WPF?

Как сохранить WebSession Awesonium'a в c# WPF?

Вообщем, не знаю куда податься в оффДокументации ничего не нашелГугл подсказал только для WFA

213
Анимация Margin.Top

Анимация Margin.Top

Ругается нельзя анимировать отступыА надо перемесить элемент в низ

291