编程语言
首页 > 编程语言> > c# – 如何让Flyout宽度适应应用宽度?

c# – 如何让Flyout宽度适应应用宽度?

作者:互联网

我在我的metro风格应用程序中使用Flyouts,它使用MahApps Metro package

<Controls:MetroWindow.Flyouts>
    <Controls:FlyoutsControl>
        <Controls:Flyout Header="INSTELLINGEN" Position="Left" Width="600" Theme="Dark">
            some content
        </Controls:Flyout>
    </Controls:FlyoutsControl>
</Controls:MetroWindow.Flyouts>

这很好,但是现在我想要一个占用整个应用程序宽度的Flyout,即使用户调整它的大小.基本上我喜欢Width =“*”但这不起作用.

解决方法:

这是一个使用最新alpha版本(0.15)的示例.

只需设置边距和宽度即可获得所需.

  <controls:MetroWindow.Flyouts>
    <controls:FlyoutsControl>
      <controls:Flyout Header="INSTELLINGEN"
                       Position="Left"
                       Margin="0 0 100 0"
                       Width="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=controls:MetroWindow}, Path=ActualWidth}"
                       Theme="Dark">
      </controls:Flyout>
    </controls:FlyoutsControl>
  </controls:MetroWindow.Flyouts>

标签:c,wpf,mahapps-metro
来源: https://codeday.me/bug/20190609/1207126.html