Представьте, что у меня в окне две кнопки WPF со следующим содержимым:
<Button>OK</Button>
<Button>Cancel</Button>
Я хочу, чтобы эти кнопки были одинаковой ширины, однако в сценарии, где Content
привязан клокализованное значение для языка данного пользователя, я не знаю, насколько широкими должны быть кнопки для размещения нового контента.
Как я могу применить минимальную ширину к этим кнопкам, такую, чтобы ширина самой широкойодин (в зависимости от содержимого) эффективно используется как MinWidth
для обоих, таким образом, сохраняя их однородность?
Или, другими словами: я не хочу, чтобы кнопки были шириной их контейнера (разве что использование контейнера умным способом является ответом на мою проблему), и я не хочу, чтобы каждый из них просто изменял размер своего собственного контента, потому что это сделает их разными размерами.Я хочу что-то промежуточное.Тот, у которого самый большой размер контента для отображения его содержимого, а все остальные имеют размер, равный той же ширине, поэтому ширины все равны.
Я ожидаю, что ответ заключается в том, чтобы поместить их в какой-то контейнер.Я знаю, что мог бы использовать Grid
и позволить им заполнять ячейки сетки, но дело в том, что я не хочу, чтобы они тоже были слишком в ширину.Я знаю, что мог бы иметь некоторый код позади, который запускается для события Content_Changed
кнопок и устанавливает минимальную ширину для ширины самой широкой кнопки, но меня интересует метод чисто-xaml.Возможно, мне нужно создать пользовательский элемент управления, расширяющий ItemsControl
, который использует кодовый фрагмент при добавлении или изменении размера новых элементов и применяет ширину самого широкого элемента как MinWidth
всех остальных элементов.
Большое спасибо заранее.