首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在WPF中删除ListBox的边框?

如何在WPF中删除ListBox的边框?
EN

Stack Overflow用户
提问于 2021-03-30 19:11:16
回答 1查看 46关注 0票数 0

以下是我的代码:

代码语言:javascript
运行
复制
<Grid>
    <ScrollViewer Grid.Row="0" Grid.Column="1" HorizontalScrollBarVisibility="Disabled">
        <StackPanel Orientation="Vertical">
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
                <TextBox MinWidth="80" Name="tbTodoName" Margin="5, 2"/>
                <Button Content="Add" Height="30" Margin="5, 0"/>
            </StackPanel>
            <ListBox Name="lstTodo" ItemsSource="{Binding}" BorderThickness="0" Padding="0" ItemTemplate="{StaticResource TodoTemplate}" ScrollViewer.HorizontalScrollBarVisibility="Disabled" HorizontalAlignment="Stretch">
            </ListBox>
        </StackPanel>
    </ScrollViewer>
</Grid>

下面是这个程序的样子:

如图所示,在ListBox周围显示了一个框架。我不明白为什么,因为我设置了BorderThickness和Padding = "0“。

有人能帮我吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-30 19:48:50

您已经设置了一个自定义ItemTemplate,它仅应用于项。

您还需要应用模板:

代码语言:javascript
运行
复制
    <Grid>
        <ScrollViewer Grid.Row="0" Grid.Column="1" HorizontalScrollBarVisibility="Disabled">
            <StackPanel Orientation="Vertical">
                <StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
                    <TextBox MinWidth="80" Name="tbTodoName" Margin="5, 2"/>
                    <Button Content="Add" Height="30" Margin="5, 0"/>
                </StackPanel>
                <ListBox Name="lstTodo" ItemsSource="{Binding}" BorderThickness="0" Padding="0" ItemTemplate="{StaticResource TodoTemplate}" Template={StaticResource ListBoxNoBorder} 
ScrollViewer.HorizontalScrollBarVisibility="Disabled" HorizontalAlignment="Stretch">
                </ListBox>
            </StackPanel>
        </ScrollViewer>
    </Grid>

在你的资源字典中:

代码语言:javascript
运行
复制
<ControlTemplate x:Key="ListBoxNoBorder" TargetType="{x:Type ListBox}">
    <Border BorderBrush="Transparent" BorderThickness="0">
        <ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
    </Border>
</ControlTemplate>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66869902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档