0

我想以编程方式加载 AppBar,但无法将图像设置为位图。这是允许的吗?还是只能使用 Segoe UI Symbol 字符?

我尝试在资源中这样做:

<Style x:Key="StudyAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
    <Setter Property="AutomationProperties.AutomationId" Value="StudyAppBarButton"/>
    <Setter Property="AutomationProperties.Name" Value="Study"/>
    <Setter Property="Content">
        <Setter.Value>
            <Image Source="Assets/AppBar/Study.png" />
        </Setter.Value>
    </Setter>
</Style>

没有位图出现。

我可以以编程方式设置位图:

        Uri _BaseUri = new Uri("ms-appx:///");
        foreach (MenuItem menuItem in Model.MainMenu.MenuItems)
        {
            Button button = new Button();
            button.Name = menuItem.Name;
            button.Click += AppBar_Click;
            button.Tag = menuItem.Name;
            Style style = (Style)App.Instance.Resources["AppBarButtonStyle"];
            button.Style = style;
            Image image = new Image();
            Uri uri = new Uri(_BaseUri, "Assets/AppBar/" + menuItem.Name + ".png");
            image.Source = new BitmapImage(uri);
            image.Width = 25;
            image.Height = 25;
            button.Content = image;
            AutomationProperties.SetName(button, menuItem.Title);
            TopLeftPanel.Children.Add(button);
        }

但如果我这样做:

button.Content = "\uE10F";

我没有看到家庭角色。

一般来说,是否有在应用栏中使用自定义图像的示例或指南?Segoe 没有适用于我所有菜单项的图像。

不幸的是,我的应用程序非常复杂,有两级菜单,所以任何有关处理此问题的建议将不胜感激。基本上,我正在尝试将我的网站http://www.jtlanguage.com变成一个应用程序。

谢谢。

-约翰

4

1 回答 1

0

您必须创建自己的样式,AppBarButtonStyle 不能与图像一起使用。我建议您查看此 MSDN 论坛主题,它可能对您有所帮助。如何自定义我的 AppBarIcons 图片?. 如果您找到解决方案,请不要忘记接受此答案。

于 2013-03-26T13:04:47.133 回答