我想以编程方式加载AppBar,但是我无法将图像设置为位图。这是允许的吗?或者只能使用Segoe UI符号字符?
我尝试在资源中执行此操作:
<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变成一个应用程序。
感谢。
-John
答案 0 :(得分:0)
您必须创建自己的样式,AppBarButtonStyle不能与图像一起使用。我建议你查看这个MSDN论坛帖子,它可能对你有所帮助。 how I can customize my AppBarIcons Images?。如果找到解决方案,请不要忘记接受这个答案。