c# - 仅在堆栈面板中显示完整的项目

标签 c# wpf wpf-controls

我有一个由网格组成的 slider :

  • 滚动查看器
  • 堆栈面板(堆栈面板位于查看器内部)

slider 有 2 个导航按钮,用于浏览所选项目。

但是我怎么能只显示完整的项目呢?目前一些按钮只显示一半,因为没有更多可用空间。在最终版本中,一次只能显示 5 个按钮。但是,如果触发了某个事件,则会显示更多按钮。

例如 1-5 是可见的。如果弹出另一个按钮,则只有 2-6 个应该可见。

slider 内的按钮必须动态创建。 坚持使用堆栈面板是否有意义?因为目前按钮是静态的。

编辑: 将按钮动态添加到堆栈面板时,这对于已经定制的按钮究竟是如何工作的?我可以添加一个正常的按钮就好了,但我想添加下面已经制作的按钮。

enter image description here

最佳答案

我相信 VirtualizingStackPanel(默认情况下启用虚拟化)只能执行基于项目的滚动(而不是基于像素的滚动)。可能值得尝试将 StackPanel 换成 VirtualizingStackPanel,看看是否能解决您的问题。

关于c# - 仅在堆栈面板中显示完整的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9705069/

相关文章:

.net - 如何通过窗口移动事件移动窗口?

c# - 设计器显示 A 'Binding' can only be set on a DependencyProperty of a DependencyObject 错误

c# - Canvas 覆盖了里面 TextBlock 的 TextAlignment 值

c# - WPF 在第二个窗口打开时禁用主窗口,直到它关闭

WPF 松散 XAML 资源字典

c# - 如何将 TableClientOptions 与 TableClient 结合使用以进行 Azure 表存储重试?

c# - 在 IDiposable 类的 Dispose 方法中注销外部事件是一种好习惯吗?

c# - 使用 directshow 在桌面录制上翻转光标图标

c# - 无法使用 C# 在 SQLite 中插入数据

.net - 什么会导致 WPF 应用程序因 AppHangB1 问题事件名称而崩溃?