wpf: заголовок tabitem, чтобы соответствовать размеру заголовка.содержимого

#controls #tabs

#элементы управления #вкладки

Вопрос:

У меня есть элемент управления tab, и когда элементов слишком много, я получаю заголовки элементов tab в нескольких строках. Таким образом, это будет похоже

 [TabItemAA1] [TabItemAA2]
[        TabItem3       ]
[TabItem4AAAAAAAAAAAAAAA]
  

Я не возражаю против их укладки, но когда это происходит, заголовок TabItem3 растягивается, чтобы соответствовать ширине элемента управления tab.
Как я могу предотвратить это или сделать содержимое элемента tab, которое является TextBlock, соответствующим увеличенной ширине?

Спасибо

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

1. Не могли бы вы нарисовать картинку (с mspaint все в порядке) того, что вы ожидаете увидеть? Я решил похожую проблему, создав пользовательскую панель и изменив шаблоны элементов управления. Ваша проблема может быть проще.

Ответ №1:

Хотя люди ожидают увидеть это примерно так. Метки вкладок должны располагаться по центру, чтобы их можно было легко прочитать. Я предполагаю, что вместо этого вы хотите выполнить выравнивание по левому или правому краю. Изменение доминирующей парадигмы пользовательского интерфейса — хорошая идея, только если вы собираетесь ее улучшить.

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

Для другого стиля пользовательского интерфейса, в котором вкладки прокручиваются горизонтально вместо разделения на несколько строк, вы также можете ознакомиться со статьей этого парня под названием «WPF Single Row Tab Control»:http://rickdoes.net/post/2009/11/06/WPF-Single-Row-Tab-Control.aspx