1

我正在尝试在 .NET 4.0 项目中使用 RibbonControlLibrary。如果不满足某些条件,我有一个包含需要删除的菜单项的应用程序菜单。我尝试使用BooleanToVisibilityConverter,它可以很好地删除菜单项,但菜单本身不会改变大小,所以在仍然可见的项目下有一个奇怪的间隙。

这是使用绑定将菜单项设置为折叠时的样子: 丝带错误

这是它应该看起来的样子: 色带正确

如果我将菜单项硬编码为折叠,它看起来很好,但是当我使用绑定或触发器来更改Visibility值时它是错误的。这让我认为有一个错误导致菜单在项目更改时不会重新计算大小。

这是功能区的 XAML:

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary">
<Window.Resources>
    <BooleanToVisibilityConverter x:Key="converter" />
</Window.Resources>
...

<ribbon:Ribbon>
    <ribbon:Ribbon.ApplicationMenu>
        <ribbon:RibbonApplicationMenu>
            <ribbon:RibbonApplicationMenuItem Header="Item 1"
                                              Visibility="{Binding TestProperty, Converter={StaticResource converter}}" />
            <ribbon:RibbonApplicationMenuItem Header="Item 2" />
        </ribbon:RibbonApplicationMenu>
    </ribbon:Ribbon.ApplicationMenu>
</ribbon:Ribbon>

我也尝试Height使用触发器设置为 0,但效果是一样的。是我遗漏了什么还是功能区库中的错误?

4

0 回答 0