1

Surface 2.0/pixelsense の wpf でシンプルなメニューを実装しようとしました。

<s:SurfaceWindow x:Class="MenuTrial.SurfaceWindow1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:s="http://schemas.microsoft.com/surface/2008" 
xmlns:MenuTrial="clr-namespace:MenuTrial"
xmlns:Properties="clr-namespace:MenuTrial.Properties"
Title="MenuTrial"
>



 <Grid Name="MenuGrid" Height="102" VerticalAlignment="Bottom">
    <s:ScatterView HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
        <s:ScatterView.Resources>
            <Image x:Shared="false" x:Key="IconPhoto" Source="Resources\Icons\photo.png"/>
            <Image x:Shared="false" x:Key="IconCopy" Source="Resources\Icons\copy.png"/>
        </s:ScatterView.Resources>


        <s:ScatterViewItem Height="139"
                           Width="224"
                           Orientation="-23"
                           Background="#FF787878">
        <s:ElementMenu
            Name="MainMenu"
            ActivationMode="AlwaysActive"
            ActivationHost="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type s:ScatterViewItem}}}"
        >
        <s:ElementMenuItem Header="Menu1"/>
      <s:ElementMenuItem Header="Menu2"/>
             <s:ElementMenuItem Header="{x:Static Resources:Resources.IconPhoto}" Icon="{StaticResource IconPhoto}">
                  <s:ElementMenuItem Header="{x:Static Resources:Resources.Copy}" Icon="{StaticResource IconCopy}" Command="{x:Static MenuTrial:SurfaceWindow1.ShowMessageCommand}" CommandParameter="{Binding Path=Header, RelativeSource={x:Static RelativeSource.Self}}"/>
                  <s:ElementMenuItem Header="Menu 3.2" />
                  <s:ElementMenuItem Header="Menu 3.3"/>
            </s:ElementMenuItem>
    </s:ElementMenu>
        </s:ScatterViewItem>
    </s:ScatterView>
    <TextBlock x:Name="textMessage" Width="500" Margin="40" TextAlignment="Center" HorizontalAlignment="Center" VerticalAlignment="Bottom" FontFamily="Segoe360" FontSize="17" />
</Grid>

問題は、不明なビルド ミスが発生することです。キーを NULL にすることはできません。または、英語の何かになります。Header="{x:Static Resources....

これは、Surface サンプルとまったく同じです。メニュー項目がクリックされたときにメッセージを表示したかっただけです。

誰でも私を助けてもらえますか?どうも

4

1 に答える 1

0

これをセクションMenuItemの下で定義する場合Resourcesは、値を指定する必要がありx:Keyます。キーなしでリソースを宣言することはできません -

<s:ElementMenuItem Header="{x:Static Resources:Resources.IconPhoto}"
                   Icon="{StaticResource IconPhoto}"
                   x:Key="MyMenuItem">
                  ....
</s:ElementMenuItem>
于 2012-11-14T13:25:18.700 に答える