Уменьшить отступ в TreeViewItem для самого глубокого узла - PullRequest
3 голосов
/ 06 июля 2011

Как я могу уменьшить левый отступ самого глубокого TreeViewItem узла?По какой-то причине WPF, похоже, немного увеличивает этот отступ для всех, кроме самого глубокого узла.Глядя на реализацию представления Windows XP в виде дерева, каждая глубина имеет одинаковое левое поле.

Я искал вокруг, и я не могу найти реализацию, которая работает , но , это представляется возможным.

1 Ответ

5 голосов
/ 06 июля 2011

ОБНОВЛЕНИЕ : исправлено решение

Вот изображение проблемы для справки ...

enter image description here

И вотизображение того, на что вы (вероятно) надеетесь ...

enter image description here

ПРИМЕЧАНИЕ. Список файлов показан слева на втором снимке экрана.

После этого я считаю это дефектом в шаблоне TreeViewItem по умолчанию.Чтобы исправить это и внести любые другие необходимые корректировки, вам необходимо предоставить собственный шаблон TreeViewItem.Начиная с шаблона TreeViewItem по умолчанию из этого SO ответа ...

Вам необходимо изменить это ...

<Trigger Property="HasItems" Value="false">
    <Setter Property="Visibility" TargetName="Expander" Value="Hidden"/>
</Trigger>

На это ...

<Trigger Property="HasItems" Value="false">
    <Setter Property="Visibility" TargetName="Expander" Value="Collapsed"/>
</Trigger>

Это должно сделать это для вас.По умолчанию система оставляет 19 пикселей пространства для расширителя.Поскольку расширитель не нужен на уровне листьев, эта область должна быть свернута, а не скрыта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...