2010-10-30 2 views

ответ

1
<ListBox.ItemsPanel> 
    <ItemsPanelTemplate> 
     <StackPanel HorizontalAlignment="Center"/> 
    </ItemsPanelTemplate> 
</ListBox.ItemsPanel> 
0

Вы, возможно, придется центрировать DockPanel, а не данных внутри него. Я видел это поведение с StackPanel, потому что панель сжимается до содержимого. Центрирование работает правильно, но в неправильном контексте.

+0

DockPanel тоже не по центру – Mediator

+0

@simply: К сожалению, было только догадываться :) –

1

Принятый ответ правильный, но мне нужно было немного больше: не только центр, но и горизонтально растягивать элементы. Просто изменение HorizontalAlignment к Stretch не работает, так вот как это делается:

<ItemsPanelTemplate> 
    <StackPanel HorizontalAlignment="Stretch"> 
     <StackPanel.Resources> 
      <Style TargetType="ListBoxItem"> 
       <Setter Property="HorizontalContentAlignment" Value="Center"/> 
      </Style> 
     </StackPanel.Resources> 
    </StackPanel> 
</ItemsPanelTemplate> 
5
<ListBox HorizontalContentAlignment="Center"> 
    <ListBox.ItemTemplate> 
    <DataTemplate> 
     <TextBlock Text="{Binding yourstuff}" FontSize="72"/> 
    </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 
Смежные вопросы