我想以编程方式加载 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变成一个应用程序。
谢谢。
-约翰