有人知道如何将滚动条添加到包含在 itemscontrol 中的包装面板中吗?
Neil
问问题
1171 次
3 回答
3
在这里行不通
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<ScrollViewer>
<WrapPanel Orientation="Horizontal" />
</ScrollViewer>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
你得到一个讨厌的异常,ItemsPanelTemplate 的 VisualTree 必须包含一个面板。'System.Windows.Controls.ScrollViewer' 不是面板。
于 2010-06-15T14:32:23.693 回答
1
在它周围包裹一个 ScrollViewer 标签
<ScrollViewer>
<WrapPanel>
<!-- your other controls here -->
</WrapPanel>
</ScrollViewer>
于 2009-05-22T15:49:47.950 回答
0
此示例(从 Kaxaml 示例修改)应该可以帮助您:
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<Grid.Resources>
<XmlDataProvider x:Key="flickrdata" Source="http://api.flickr.com/services/feeds/photos_public.gne?tags=flower&lang=en-us&format=rss_200">
<XmlDataProvider.XmlNamespaceManager>
<XmlNamespaceMappingCollection>
<XmlNamespaceMapping Prefix="media" Uri="http://search.yahoo.com/mrss/"/>
</XmlNamespaceMappingCollection>
</XmlDataProvider.XmlNamespaceManager>
</XmlDataProvider>
<DataTemplate x:Key="itemTemplate">
<Image Width="75" Height="75" Source="{Binding Mode=OneWay, XPath=media:thumbnail/@url}"/>
</DataTemplate>
<ControlTemplate x:Key="controlTemplate" TargetType="{x:Type ItemsControl}">
<WrapPanel IsItemsHost="True" Orientation="Horizontal"/>
</ControlTemplate>
</Grid.Resources>
<ScrollViewer Width="320" Height="225">
<ItemsControl
Width="300"
ItemsSource="{Binding Mode=Default, Source={StaticResource flickrdata}, XPath=/rss/channel/item}"
ItemTemplate="{StaticResource itemTemplate}"
Template="{StaticResource controlTemplate}">
</ItemsControl>
</ScrollViewer>
</Grid>
</Page>
于 2011-03-03T06:55:36.383 回答