WPF - установка HorizontalAlignment = Фрагмент к Текстовому полю в StackPanel

Вы можете попробовать использовать JTidy,

Tidy tidy = new Tidy();
tidy.setXHTML(true);
final InputStream inputStream = new FileInputStream("input.html");
tidy.parse(inputStream, System.out);
13
задан Terry 11 August 2015 в 17:37
поделиться

3 ответа

Да, это дизайном. StackPanel выделит место TextBox просит. Если Вы не установили ширину на TextBox, это потребует, чтобы только достаточно ширины соответствовало своему тексту.

11
ответ дан 1 December 2019 в 22:24
поделиться

Ответ Кента кажется правильным.
Для тихого принуждения переопределяют поведение StackPanel, я думаю, что Вам были бы нужны к динамично вычислять-набору свойство Width содержавших элементов ИЛИ некоторое броское переопределение MeasureOverride. Я использовал бы другого менеджера/панель расположения. Некоторые вещи я отметил..

  • Значение по умолчанию для свойств HorizontalAlignment и VerticalAlignment дочерних элементов является Фрагментом (если Вы не указываете тот явно).
  • StackPanel расширит элементы на основе своего значения свойства Ориентации. Так

    • Orientation=Horizontal означает, что все элементы будут вертикально расширены максимум к потоку Элементов горизонтально.
    • Orientation=Vertical означает, что все элементы будут horiz, расширенным максимум к потоку Элементов вертикально.
  • Если явно не указано, Шириной и Высотой дочерних элементов является NaN. При определении явного значения StackPanel будет соблюдать их по настройкам Horiz и Vert Alignment.
  • Сам StackPanel имеет HorizontalAlignment и VerticalAlignment, который добавляет дальнейшее скручивание расположения. Можно экспериментировать с этим примером.

StackPanel

Значение по умолчанию является фрагментом и для HorizontalAlignment и для VerticalAlignment содержания, которое содержится в StackPanel.

HorizontalAlignment

Когда свойства Height и Width явно установлены на элементе, эти измерения берут более высокий прецедент во время расположения и отменят типичные эффекты установки HorizontalAlignment to Stretch.

7
ответ дан 1 December 2019 в 22:24
поделиться

Мне нужно, чтобы элементы имели одинаковый размер, но располагались вертикально.

Я использовал UniformGrid и установил для свойства Columns значение 1. (проверено с помощью TextBox, и оно растягивается, как вы хотите )

4
ответ дан 1 December 2019 в 22:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: