2016-07-15 2 views
0

У меня есть TreeView, в котором я хочу расширитель, чтобы скрыть/показать treeview.But я хочу значок расширителя на правой стороне и exapnder заголовка на левой side.Like этомкак установить заголовок расширителя на левой стороне и значок на правой стороне

enter image description here

Это то, что я сделал

<Expander Grid.Row="0" FlowDirection="RightToLeft" > 
        <Expander.Header > 
         <StackPanel Orientation="Horizontal" FlowDirection="LeftToRight" > 
          <TextBlock Foreground="White" FontWeight="Bold">Global Setting</TextBlock> 
          <Path Data="{StaticResource IconGlobalNetworking}" Fill="#07B9D3" Margin="5"></Path> 

          <!--<Path Data="{StaticResource IconGlobalNetworking}" Fill="#07B9D3" Margin="5"></Path>--> 
         </StackPanel>        
        </Expander.Header> 
        <TreeView FlowDirection="LeftToRight" BorderThickness="0" Margin="30,0,0,0"> 
         <TreeViewItem> 
          <TreeViewItem.Header> 
           <StackPanel Orientation="Horizontal"> 
            <Path Data="{StaticResource IconServerStack}" Fill="#07B9D3" Margin="5"></Path> 
            <TextBlock Foreground="White" FontWeight="Bold" Margin="5">Managment Server</TextBlock> 
           </StackPanel> 
          </TreeViewItem.Header> 
         </TreeViewItem> 
         <TreeViewItem> 
          <TreeViewItem.Header> 
           <StackPanel Orientation="Horizontal"> 
            <Path Data="{StaticResource IconSalientServer}" Fill="#07B9D3" Margin="5"></Path> 
            <TextBlock Foreground="White" FontWeight="Bold" Margin="5">License Server</TextBlock> 
           </StackPanel> 
          </TreeViewItem.Header> 
         </TreeViewItem> 
         <TreeViewItem> 
          <TreeViewItem.Header> 
           <StackPanel Orientation="Horizontal"> 
            <Path Data="{StaticResource IconGlobalNetworking}" Fill="#07B9D3" Margin="5"></Path> 
            <TextBlock Foreground="White" FontWeight="Bold" Margin="5">Web Server</TextBlock> 
           </StackPanel> 
          </TreeViewItem.Header> 
         </TreeViewItem> 
        </TreeView> 
       </Expander> 

это дает мне такой вывод

enter image description here

Я попробовал «flowdirection = right» exapnder, но он перемещает весь заголовок, а также значок для прав. Я просто хочу значок exapnder на правой стороне. Как я могу это сделать.

+0

Вы пробовали вращать оба? – Jose

+0

no..whats это? –

+0

Как указано в ссылке, это дубликат: '' – Jose

ответ

1

Возможно, вам придется заменить Template расширителей, эта кнопка жестко закодирована.

+0

Извините, я не понимаю, что вы не объясните вкратце. –

+0

@NeelamPrajapati: прочитайте [документацию для свойства] (https://msdn.microsoft.com/en-us/library/system.windows.controls.control.template (v = vs.110) .aspx) и [связанный класс] (https://msdn.microsoft.com/en-us/library/system.windows.controls.controltemplate (v = vs.110) .aspx) , Вы просто переопределяете внутренний состав элемента управления, есть много примеров. Вы также можете захотеть найти шаблон по умолчанию, тогда вы можете просто изменить это и не нужно делать это с нуля. –

Смежные вопросы