我想将ListBox的高度绑定到StackPanel的高度,以便ListBox自身垂直拉伸,因此绿色区域不再可见。将StackPanel中的列表框的高度绑定到StackPanel的高度
当列表框中没有项目时,其隐藏。 当item> 1时,ListBox必须伸展自己到add/del按钮,这样add/del按钮总是在堆叠面板的底部(不想使用dockpanel)
我该怎么办那?我没有任何绑定的错误?
<StackPanel x:Name="stack" Background="Green" DataContext="{Binding DocumentViewModelList/}" Orientation="Vertical" >
<ListBox SelectionMode="Single" VirtualizingStackPanel.IsVirtualizing="False"
SelectedItem="{Binding SelectedDocumentViewModel,Mode=TwoWay}"
Height="{Binding ElementName=stack,Path=Height}"
Width="Auto"
Focusable="True"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Auto"
Grid.Row="1"
Name="documentListBox"
BorderThickness="1"
ItemsSource="{Binding DocumentList}"
Visibility="{Binding ElementName=documentListBox,Path=HasItems, Converter={StaticResource boolToVisibilityConverter}}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=Id}" />
<TextBlock Text="{Binding Path=Name}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
<!--<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="IsSelected" Value="{Binding Mode=TwoWay, Path=IsSelected}" />
</Style>
</ListBox.ItemContainerStyle>-->
</ListBox>
</StackPanel>
@Wako wako:P不错不错! – Elisabeth 2010-09-15 20:28:38
http://en.wikipedia.org/wiki/Occam%27s_razor – 2010-09-15 20:30:47