在Windows 8中使用c#设置菜单弹出窗口背景颜色

use*_*763 7 c# xaml windows-8.1

我想用c#设置菜单弹出窗口背景,因为我在运行时创建弹出窗口我怎么能这样做我知道这个用xaml像这样

<Flyout.FlyoutPresenterStyle>
            <Style TargetType="FlyoutPresenter">
                <Setter Property="ScrollViewer.ZoomMode" Value="Enabled"/>
                <Setter Property="Background" Value="Black"/>
                <Setter Property="BorderBrush" Value="Gray"/>
                <Setter Property="BorderThickness" Value="5"/>
                <Setter Property="MinHeight" Value="300"/>
                <Setter Property="MinWidth" Value="300"/>
            </Style>
        </Flyout.FlyoutPresenterStyle>
Run Code Online (Sandbox Code Playgroud)

如何使用c#实现这一目标?

use*_*763 10

终于解决了

  MenuFlyout m = new MenuFlyout();
  Style s = new Windows.UI.Xaml.Style { TargetType = typeof(MenuFlyoutPresenter) };
  s.Setters.Add(new Setter(BackgroundProperty,new SolidColorBrush(Colors.Blue)));
  MenuFlyoutItem mn = new MenuFlyoutItem();
  m.MenuFlyoutPresenterStyle = s;
  m.Items.Add(mn);
Run Code Online (Sandbox Code Playgroud)