5
嗨,感谢您的期待!如何在WPF/XAML中滚动网格行?
背景
我已在WPF一个简单的小应用程序,具有由一列两行的网格布局。顶行包含标题的简单标签,底行包含一个在运行时动态填充图像缩略图的wrappanel。这里是XAML:
<Window x:Class="HTNavigator.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" WindowState="Maximized" WindowStyle="None">
<Window.Background>
<ImageBrush ImageSource="/HTNavigator;component/Images/HNBG.jpg" />
</Window.Background>
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="75"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<StackPanel Grid.Column="0" Grid.Row="0" Height="50" HorizontalAlignment="Left" Margin="30,10,0,0" Name="stackPanel1" VerticalAlignment="Top" Width="Auto" FlowDirection="LeftToRight" Orientation="Horizontal" >
<Label Content="Home Navigator v0.1" FontFamily="Tahoma" FontSize="18" FontWeight="Bold" Foreground="White" />
<Button Content="Close" Height="50" Click="Button_Click"></Button>
</StackPanel>
<ScrollViewer Grid.Row="1" Name="MyScrollViewer" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
<WrapPanel HorizontalAlignment="Center" Name="spContainer" VerticalAlignment="Top" ClipToBounds="True"></WrapPanel>
</ScrollViewer>
</Grid>
</Window>
问题
滚动条不显示和鼠标滚轮滚动也不起作用。我原来没有使用网格布局,并在这一次的XAML的这部分表现为预期:
<ScrollViewer Name="MyScrollViewer" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
<WrapPanel HorizontalAlignment="Center" Name="spContainer" VerticalAlignment="Top" ClipToBounds="True" ItemHeight="Auto"> </WrapPanel>
</ScrollViewer>
现在一切都勾画出正确的,但我没有得到我的垂直滚动的能力(我不知道想要水平滚动)。
有什么想法?
谢谢!
马特
你在说什么?新年前夕差不多14h前! SCNR :) – ChrisWue 2012-01-01 00:36:43
哈哈,对不起所有的好点。事实上,在庆祝之前试图突破这个问题是个问题! Wrappanel在运行时获取其内容。我会尝试你提到的其他事情。谢谢! – 2012-01-01 00:46:59
再次感谢BalamBalam - 祝您新年快乐! – 2012-01-01 00:56:57