Silverlight - пространство между вершиной TreeView и первым TreeViewItem - PullRequest
1 голос
/ 12 мая 2009

У меня есть следствие вопроса к Это один.

Как вы можете изменить расстояние между вершиной элемента управления TreeView и первым TreeViewItem? В частности, я хочу уменьшить расстояние между верхом элемента управления и первым элементом. Как и в случае с другим вопросом, я предполагаю, что мне нужно изменить стиль TreeView. Но какой стиль мне нужно изменить, и какое свойство управляет этим конкретным пространством?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 13 мая 2009

Я получил ответ на мой вопрос на форумах Silverlight, net здесь . По сути, мне нужно было добавить шаблон элемента управления и изменить поле в ItemPresenter.

<ctl:TreeView>
  <ctl:TreeView.Template>
    <ControlTemplate TargetType="ctl:TreeView">
      <Grid x:Name="Root" >
        <Grid.Resources>
          <SolidColorBrush x:Key="BorderBrush" Color="#FF000000" />
        </Grid.Resources>
        <Border x:Name="Border" BorderBrush="{StaticResource BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="2">
          <Border Padding="{TemplateBinding Padding}" Background="{TemplateBinding Background}" Margin="1">
            <ScrollViewer x:Name="ScrollViewer" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" Background="{x:Null}" BorderBrush="Transparent" BorderThickness="0" IsTabStop="False" TabNavigation="Once">
              <ItemsPresenter x:Name="TreeItems" Margin="5" />
            </ScrollViewer>
          </Border>
        </Border>
      </Grid>
    </ControlTemplate>
  </ctl:TreeView.Template>
<ctl:TreeView>
1 голос
/ 12 мая 2009

Вы можете использовать отступы для TreeView:

<TreeView Name="treeView1" Padding="0,50,0,0 ">
            <TreeViewItem Header="test" Selected="TreeViewItem_Selected">
                <TreeViewItem Header="sub test" />
            </TreeViewItem>
        </TreeView>

это добавит отступ 50 к верхней части внутренней части дерева.

...