【问题标题】:How to place on spinbutton on top of another in NumericUpDown? | Avalonia UI如何在 NumericUpDown 中将旋转按钮放在另一个按钮之上? |阿瓦隆尼亚用户界面
【发布时间】:2023-02-15 23:25:10
【问题描述】:

默认 NumericUpDown 看起来像这样:

,

由于按钮占据了很多位置,我想让它更像 Windows 窗体样式,如下所示:

我试过使用 ButtonSpinner 样式,但没有成功,它缩小了整个 NumericUpDown,而不仅仅是 ButtonSpinner(即使我为 NumericUpDown 编写了另一种样式)。

<Style Selector="ButtonSpinner">
  <Setter Property="Height">
    <Setter.Value>
      10
    </Setter.Value>
  </Setter>
  <Setter Property="Width">
    <Setter.Value>
      25
    </Setter.Value>
  </Setter>
</Style>

我应该怎么做才能达到预期的结果?

【问题讨论】:

    标签: c# xaml avaloniaui avalonia


    【解决方案1】:

    有两种解决方案:

    1. 您可以修改ButtonSpinner 模板(或NumericUpDown /template/ ButtonSpinner 模板)以使用2 行的UniformGrid 而不是Fluent 主题使用的StackPanel with horizontal orientation。然而,您可能会遇到一些缺少静态资源的问题,因此您必须记住将它们包含在您的文件中。
    2. 您可以使用 Simple 主题代替 Fluent 主题。它默认使用带有UniformGrid with 2 rows 的模板,但它会更改所有控件的外观。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-28
      • 2020-05-04
      相关资源
      最近更新 更多