XAML WinUI 3-如何在命令栏中的SplitButton中添加图标?

i2loujxw  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(90)

我刚开始使用WinUI3。我试图像使用XamlUICommand和AppBarButton一样在命令栏上为SplitButton添加图标。SplitButton似乎没有Icon属性。

<Page
    x:Class="MyApp.Views.ActivityPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:controls="using:CommunityToolkit.WinUI.UI.Controls"
    mc:Ignorable="d">

    <Grid RowDefinitions="*, 50" x:Name="ContentArea">
        <CommandBar Background="Transparent" IsOpen="False" DefaultLabelPosition="Right" Grid.Row="1" HorizontalAlignment="Left">
            <AppBarButton x:Name="EditJob" Command="{StaticResource UICmdEditJob}"/>
            <AppBarElementContainer>
                <SplitButton Content="Estimate">
                    <SplitButton.Flyout>
                        <MenuFlyout Placement="RightEdgeAlignedTop">
                            <MenuFlyoutItem Text="View Estimate"/>
                            <MenuFlyoutItem Text="Print Estimate"/>
                        </MenuFlyout>
                    </SplitButton.Flyout>
                </SplitButton>
            </AppBarElementContainer>

字符串
我怎样才能添加一个图标到SplitButton像一个普通的AppBarButton?我试图使用Segoe流畅的图标字体。非常感谢。
我尝试了很多方法来添加一个图标,但都很短,因为我可以告诉你没有SplitButton.Icon属性。

up9lanfz

up9lanfz1#

您可以将FontIconTextBlock放置为SplitButtonContent

<SplitButton>
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="Auto" />
        </Grid.ColumnDefinitions>
        <!--  Content  -->
        <FontIcon
            Grid.Column="0"
            FontSize="16"
            Glyph="&#xE8E1;" />
        <TextBlock
            Margin="8,0,0,0"
            Grid.Column="1"
            Text="Estimate" />
    </Grid>
    <SplitButton.Flyout>
        <MenuFlyout Placement="RightEdgeAlignedTop">
            <MenuFlyoutItem Text="View Estimate" />
            <MenuFlyoutItem Text="Print Estimate" />
        </MenuFlyout>
    </SplitButton.Flyout>
</SplitButton>

字符串

相关问题