silverlight wrappanel不包装
我有一个itemscontrol,里面有一个scrollviewer,我有一个wrappanelsilverlight wrappanel不包装,silverlight,Silverlight,我有一个itemscontrol,里面有一个scrollviewer,我有一个wrappanel 除非我给它设定一个宽度,否则这东西不会包起来。我不明白如何使用此控件吗?我可以不用加宽吗?我希望它使用stretch auto。WrapPanel逻辑将继续沿同一行放置子项,直到它以某种方式受到约束。在不指定宽度的情况下,最简单的方法可能是禁用ScrollViewer的水平滚动条 <ScrollViewer HorizontalScrollBarVisibility="Disabled
除非我给它设定一个宽度,否则这东西不会包起来。我不明白如何使用此控件吗?我可以不用加宽吗?我希望它使用stretch auto。WrapPanel逻辑将继续沿同一行放置子项,直到它以某种方式受到约束。在不指定宽度的情况下,最简单的方法可能是禁用ScrollViewer的水平滚动条
<ScrollViewer HorizontalScrollBarVisibility="Disabled">
<toolkitControls:WrapPanel />
</ScrollViewer>
然后可以水平拉伸包含项控件,它应该强制换行。换行逻辑将继续沿同一行放置子项,直到以某种方式约束它。在不指定宽度的情况下,最简单的方法可能是禁用ScrollViewer的水平滚动条
<ScrollViewer HorizontalScrollBarVisibility="Disabled">
<toolkitControls:WrapPanel />
</ScrollViewer>
然后,您可以水平拉伸包含项控件,它应该强制进行包裹。包裹面板必须从允许宽度的某个位置获得。听起来您希望将其限制在容器中的可用空间内。在这种情况下,容器的类型必须限制宽度。例如,以下方法可以很好地工作:-
<UserControl x:Class="SilverlightApplication1.WrapPanelStuff"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:toolkitControls="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Toolkit">
<Grid x:Name="LayoutRoot" Background="White">
<ScrollViewer>
<toolkitControls:WrapPanel>
<Border BorderBrush="Black" BorderThickness="2">
<TextBlock Text="This should be quite long so that it takes up some horizontal space" />
</Border>
<Border BorderBrush="Black" BorderThickness="2">
<TextBlock Text="This should be quite long so that it takes up some horizontal space" />
</Border>
<Border BorderBrush="Black" BorderThickness="2">
<TextBlock Text="This should be quite long so that it takes up some horizontal space" />
</Border>
</toolkitControls:WrapPanel>
</ScrollViewer>
</Grid>
</UserControl>
网格
将WrapPanel
限制为可用宽度。将网格
替换为画布
,它将不再工作,因为画布
不限制其内容的宽度。包裹面板必须从某个地方获得允许的宽度。听起来您希望将其限制在容器中的可用空间内。在这种情况下,容器的类型必须限制宽度。例如,以下方法可以很好地工作:-
<UserControl x:Class="SilverlightApplication1.WrapPanelStuff"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:toolkitControls="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Toolkit">
<Grid x:Name="LayoutRoot" Background="White">
<ScrollViewer>
<toolkitControls:WrapPanel>
<Border BorderBrush="Black" BorderThickness="2">
<TextBlock Text="This should be quite long so that it takes up some horizontal space" />
</Border>
<Border BorderBrush="Black" BorderThickness="2">
<TextBlock Text="This should be quite long so that it takes up some horizontal space" />
</Border>
<Border BorderBrush="Black" BorderThickness="2">
<TextBlock Text="This should be quite long so that it takes up some horizontal space" />
</Border>
</toolkitControls:WrapPanel>
</ScrollViewer>
</Grid>
</UserControl>
网格
将WrapPanel
限制为可用宽度。将网格
替换为画布
,它将不再工作,因为画布
不限制其内容的宽度。这没有帮助,就大小计算而言,ScrollViewer仍然只是中间人。这没有帮助,就大小计算而言,ScrollViewer仍然只是一个中间人。ScrollViewer位于哪个站点?ScrollViewer位于哪个站点?