2011-01-28 46 views
2

我有一个带有列表框的DockPanel。 dockpanel成功填充整个窗口的宽度。现在,我希望Listbox填充整个DockPanel的宽度。使列表框填充父容器的宽度

我已经尝试了许多事情......包括在它周围包围网格并将列设置为*的宽度,将列表框的horizo​​ntalalignment设置为伸展,以及许多其他。我似乎无法得到这个愚蠢的列表框来填补宽度。

此列表框中有一个ItemTemplate,但其中的所有内容都具有拉伸与自动宽度的水平对齐。无论何时将ItemTemplate的宽度设置为静态,列表框都会适当调整大小。我无法让它填满父母。

谢谢。

编辑:

谢谢你们让我意识到这是我的错......原来这是在风格标签一个混日子。

我将尝试现在删除此问题。

+0

您能否给我们一些代码? – Gabe 2011-01-28 16:09:49

回答

3

一个ListBox应该通过defualt填充DockPanel。

我只是想:

<DockPanel> 
    <ListBox Background="Red" /> 
</DockPanel> 

它完美地工作。如果没有代码片段,我们很难看到问题所在。

4

我敢打赌,你的列表框正在填充其父容器的宽度,但列表框中的ListBoxItems没有水平拉伸。尝试添加以下样式:

<ListBox.ItemContainerStyle> 
    <Style TargetType="ListBoxItem"> 
     <Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter> 
    </Style> 
</ListBox.ItemContainerStyle>