listbox里面添加WrapPanel ,支持自适应换行

listbox大家都会用,如果要让它支持换行操作还必须加上 ListBox.ItemsPanel ItemsPanelTemplate
toolkit:WrapPanel/ /ItemsPanelTemplate /ListBox.ItemsPanel
但是也有问题了,必须设置WrapPanel的宽度,也就是不能自适应宽度去调整每一行的宽度,这样的后果可能会出现要么全部推在一起,要么要有横向的滚动条

listbox大家都会用,如果要让它支持换行操作还必须加上

复制代码
 <ListBox.ItemsPanel>
                        <ItemsPanelTemplate>
                            <WrapPanel ></WrapPanel>
                        </ItemsPanelTemplate>
                    </ListBox.ItemsPanel>
WrapPanel
复制代码

是也有问题了,必须设置WrapPanel的宽度,也就是不能自适应宽度去调整每一行的宽度,这样的后果可能会出现要么全部推在一起,要么要有横向的滚动条。

复制代码
 <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Height="150" Width="100" Orientation="Vertical"  VerticalAlignment="Center">
                                <controls:ImageButton Width="90" Height="135" ToolTip="{Binding Name}" 
                            NormalImage="{StaticResource ConfigSurveyManageNormalImage}"/>
                                <TextBlock Height="15" ToolTip="{Binding Name}" HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding Name}" Tag="{Binding AlarmState}"></TextBlock>
                            </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
复制代码

listbox属性设置:

ListBox Grid.Row="1" ScrollViewer.HorizontalScrollBarVisibility="Disabled" Name="LBoxVaultList" VerticalAlignment="Top" BorderThickness="0"

posted @   heavi  阅读(982)  评论(1编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示
顶部
菜单
评论
推荐
底部