Страницы

Поиск по вопросам

среда, 12 июня 2019 г.

Прокрутка в Expander

Есть несколько Expander и у одного из них должен быть прокручивающийся контент.
Проблема в том, что прокрутка работает только если не указывать жестко размеры строки, но если указать Height=Auto, прокрутка отказывается работать.
В то же время, если не указать размер строки как Auto, то Expander растягивается на остальное пространство.
Как найти компромисс?

XAML:



Ответ

Ну например так. Сделаем, чтобы распахнутому экспандеру доставалась звёздочка, а свёрнутому — Auto. Для этого понадобится простой конвертер:
class BooleanConverter : IValueConverter { public T OnTrue { get; set; } public T OnFalse { get; set; }
public object Convert(object value, Type targetType, object p, CultureInfo ci) => ((bool)value) ? OnTrue : OnFalse;
public object ConvertBack(object value, Type targetType, object p, CultureInfo ci) => object.Equals(OnTrue, value); }
class BooleanToGridLengthConverter : BooleanConverter { }
Ну и XAML:




Результат:

Комментариев нет:

Отправить комментарий