2015-09-24 2 views
1

Я пытаюсь установить разделители сетки в строке состояния. Я переопределил шаблон панели элементов, чтобы поместить сетку в строку состояния. Я хочу, чтобы можно было скользить столбцы сетки взад и вперед. К сожалению, я не могу получить разветвители сетки. Я использую код xaml ниже. Спасибо за ваше время заранее.Gridsplitter в строке состояния

<StatusBar> 
      <StatusBar.ItemsPanel> 
       <ItemsPanelTemplate> 
        <Grid IsItemsHost="True"> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition Width="Auto" /> 
          <ColumnDefinition Width="10" /> 
          <ColumnDefinition Width="Auto" /> 
          <ColumnDefinition Width="10" /> 
          <ColumnDefinition Width="Auto" /> 
          <ColumnDefinition Width="10" /> 
          <ColumnDefinition Width="Auto" /> 
         </Grid.ColumnDefinitions> 
        </Grid> 
       </ItemsPanelTemplate> 
      </StatusBar.ItemsPanel> 
      <StatusBarItem Grid.Column="0"> 
       <Label Content="blah" /> 
      </StatusBarItem> 
      <StatusBarItem Grid.Column="1"> 
       <GridSplitter Width="10" HorizontalAlignment="Stretch" /> 
      </StatusBarItem> 
      <StatusBarItem Grid.Column="2"> 
       <Label Content="blah1" /> 
      </StatusBarItem> 
      <StatusBarItem Grid.Column="3"> 
       <GridSplitter Width="10" HorizontalAlignment="Stretch" /> 
      </StatusBarItem> 
      <StatusBarItem Grid.Column="4"> 
       <Label Content="blah2" /> 
      </StatusBarItem> 
      <StatusBarItem Grid.Column="5"> 
       <GridSplitter Width="10" HorizontalAlignment="Stretch" /> 
      </StatusBarItem> 
      <StatusBarItem Grid.Column="6"> 
       <Label Content="blah3" /> 
      </StatusBarItem> 
     </StatusBar> 

ответ

1

Ваш GridSplitter не является прямым потомком Grid. Он завернут в StatusBarItem. Поэтому это не может работать в этой конфигурации.

Вместо этого вы можете использовать Grid и создать фон и границы, чтобы он выглядел как StatusBar. StatusBar - относительно простой вид управления, поэтому он не должен быть слишком большим, чтобы сделать что-то похожее на это.

+0

Когда я удаляю gridsplitter из элемента состояния, я получаю такую ​​же функциональность. – user3204416

+0

Я не был уверен, что это работает без обложки элемента. Так как это, кажется, делает трюк, отлично. :-) –

+0

Haha no Я подразумевал, что разделитель сетки по-прежнему не появляется, когда я обертываю его в statusbaritem, но это нормально. Строка состояния довольно просто воссоздать, поэтому я просто создал сетку, которая выглядела аналогично. – user3204416

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