我想为Xamarin项目的UWP部分创建一个自定义CommandBar。

我想在背景色上做一个徽标。获得此效果的唯一方法是制作可视画笔或网格,以同时包含背景色和图片。

我已经读过,可以这样做。

<Window.Resources>
    <VisualBrush x:Key="myBrush">
        <VisualBrush.Visual>
            <Grid>
                <Rectangle Fill="Red" />
                <Image Source="troll.png" />
            </Grid>
        </VisualBrush.Visual>
    </VisualBrush>
</Window.Resources>

我需要在运行时添加此命令栏,如下所示:
var _globalAppBar = new CommandBar();
_globalAppBar.Background = [Link  to above layout]

问题:
  • 如何在Xamarin UWP项目中添加它?添加XAML文件?
  • 如何在运行时链接到布局?还是有更好的方法来做到这一点?
  • 最佳答案

    理想情况下,您将为CommandBar创建一种新样式并将其添加到App.xaml资源字典中

    <Application.Resources>
     <Style TargetType="CommandBar">
       <Setter Property="Background">
         <Setter.Value>
          <VisualBrush>
            <VisualBrush.Visual>
              <Grid>
                <Rectangle Fill="Red" />
                <Image Source="troll.png" />
              </Grid>
            </VisualBrush.Visual>
           </VisualBrush>
         </Setter.Value>
       </Setter>
     </Style>
    </Application.Resources>
    

    因为样式没有键,所以它将成为CommandBar的隐式样式,因此将应用于所有CommandBar实例

    09-30 00:14