0

我有一个Listbox扩展器项目,并希望它们填满整个可用的水平空间。

这是一个小例子

<Window x:Class="ExpanderTest.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <ListBox>
        <ListBoxItem>
            <Expander Background="Tan" 
                      HorizontalAlignment="Left" Header="My Expander" 
                      ExpandDirection="Down" IsExpanded="True">
                <TextBlock TextWrapping="Wrap">
                    Lorem ipsum dolor sit amet, consectetur
                    adipisicing elit, sed do eiusmod tempor incididunt ut
                    labore et dolore magna aliqua
                </TextBlock>
            </Expander>
        </ListBoxItem>
    </ListBox>
</Grid>

如果我设置Width="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ListBox}}, Path=ActualWidth}"expander,它的行为几乎与我想要的一样,只是扩展器有点太宽了。

xaml 中有没有办法告诉ListBoxItemExpander填充所有可用的水平空间?

(如果宽度变小,高度应该相应变大以显示整个内容)

4

1 回答 1

3

ok, I found the solution, just add

ScrollViewer.HorizontalScrollBarVisibility="Disabled"

to the ListBox.

于 2012-09-03T13:28:59.587 回答