0

Windows 8アプリの場合、画像の上にボタンのリストを配置する必要があります。各ボタンには、CoordinateXプロパティとCoordinateYプロパティがあります。gridViewを使用してボタンのリストにバインドします。以下のような結果が必要です。

ここに画像の説明を入力してください

これが私のコードです:

<Grid HorizontalAlignment="Left" VerticalAlignment="Top" >
     <Canvas>  
         <Image Source="ms-appx:///Assets/red.png" Stretch="None"  ></Image>

          <GridView ItemsSource="{Binding Buttons}" 
                    SelectionMode="None" IsSwipeEnabled="false"  IsItemClickEnabled="True" ItemClick="Button" Padding="0">                            
          <GridView.ItemTemplate>
                <DataTemplate>
                    <Button Width="194" Height="51" Background="Gray" Canvas.Left="{Binding CoordinateX}" Canvas.Top="{Binding CoordinateY}"></Button>                    
                </DataTemplate>
          </GridView.ItemTemplate>
          </GridView>                      
     </Canvas>
</Grid>

しかし、これは私がアプリを実行した後に得られるものです:

ここに画像の説明を入力してください

4

1 に答える 1

0

実行時に GridView 内の項目に X 座標と Y 座標を設定する前に、GridView 自体にそのプロパティが適用される可能性があります。1) GridView は組織の制御に使用されることを意図しており、2) グリッドがビュー スペースを埋めるように強制していないため

残っているのは、スタイルが項目コレクションをコントロールの境界外に強制的に存在させようとする場合に、必要に応じて動作し、その項目がスタイルに準拠する能力を制限する GridView です。

GridView の Horizo​​ntal Alignment プロパティを設定しようとすることもできますが、それが機能する場合でも、より基本的な ItemsPresenter のような整理されていないコンテンツ コントロールを使用することをお勧めします。

どちらのコントロールを使用することになるか... Horizo​​ntalContentAlignment および VerticalContentAlignment プロパティが存在する場合は、/set を確認してください。

于 2012-12-08T16:51:06.653 に答える