Решение XAML для определения высоты объекта

#c# #wpf #xaml

#c# #wpf #xaml

Вопрос:

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

У меня есть два расширителя, для нижнего объекта требуется поле:
верхний объект.Маржа.Верхний верхний объект.Высота свободное пространство 10 пикселей

Верхняя высота объекта расширена на 140 и расширена на 29.
Верхнее поле верхнего объекта равно 18.

==> Мне нужен результат в нерасширенном состоянии: 168 пикселей (140 18 10)
==> Мне нужен в нерасширенном состоянии результат: 57 пикселей (29 18 10 )

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

1. Вы используете MVVM или код позади? Вы можете использовать XAML для привязки высоты ваших элементов управления к переменной в вашем DataContext, и вы можете использовать команду button для запуска метода, который переключает между двумя значениями высоты. Если вы опубликуете то, что вы пробовали, я могу быть более конкретным…

2. Используете ли вы Margin для размещения своих элементов управления? Я бы настоятельно рекомендовал отказаться от этого и вместо этого использовать правильную панель макета. (Я предлагаю эту статью для быстрого обзора макетов, если вы новичок в WPF). Похоже, что a StackPanel намного лучше подходит для ваших целей. Тем не менее, если вы действительно хотите что-то подобное, я бы порекомендовал конвертер. В моем блоге есть математический конвертер , который вы можете использовать, если хотите, или просто создать свой собственный.