T. *_*ael 2 c# xaml windows-8.1
MenuFlyout定义如下.我不希望在MenuFlyoutItem中设置Text,我想在其中有一个可以容纳Image和TextBox的StackPanel.
<MenuFlyout x:Key="HeaderMenuFlyout">
<MenuFlyout.MenuFlyoutPresenterStyle>
<Style TargetType="MenuFlyoutPresenter">
<Setter Property="BorderBrush" Value="CornflowerBlue"/>
<Setter Property="BorderThickness" Value="5"/>
</Style>
</MenuFlyout.MenuFlyoutPresenterStyle>
<MenuFlyoutItem Text="Cloud"
Tag="Cloud" />
<MenuFlyoutItem Text="This PC" Tag="This PC"/>
</MenuFlyout>
Run Code Online (Sandbox Code Playgroud)
这将是一种快速而又肮脏的方式.
<MenuFlyoutItem Text="Hello" >
<MenuFlyoutItem.Template>
<ControlTemplate TargetType="MenuFlyoutItem">
<StackPanel Orientation="Horizontal">
<SymbolIcon Symbol="Clock" />
<TextBlock Text="{TemplateBinding Text}" />
</StackPanel>
</ControlTemplate>
</MenuFlyoutItem.Template>
</MenuFlyoutItem>
Run Code Online (Sandbox Code Playgroud)
或者,您可以扩展MenuflyoutItem并为图像/符号添加另一个依赖项属性,以便它不会在模板中进行硬编码.