私はMetroスタイルのアプリで遊んでいます。 WpfのUniformGrid
を使ってシンプルなチェス盤を作りたかったのですが、Metroスタイルのアプリではサポートされていないようです。 Metro Styleアプリでチェス盤を作成する方法はありますか?メトロスタイルのアプリのチェスボード
答えて
8x8グリッドを使用できませんか? 8つのRowDefinitions
と8つのColumnDefinitions
が必要です。
これは非常に強力な方法です。グリッドの高さと幅が正方形である限り、結果のアイテムは適切な比率になります。また、各RowDefinitionのHeightと各ColumnDefinitionのWidthを同じ任意の値に設定して比例関係にすることもできます。
このような場合は、コードビハインドとXAMLのコントロールを追加することもできますが、これは私が選択したものです。
<Grid x:Name="LayoutRoot" Background="White" Width="400" Height="400" >
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Border Background="Black" Grid.Row="0" Grid.Column="0"/>
<Border Background="Ivory" Grid.Row="0" Grid.Column="1"/>
<Border Background="Black" Grid.Row="0" Grid.Column="2"/>
<Border Background="Ivory" Grid.Row="0" Grid.Column="3"/>
<Border Background="Black" Grid.Row="0" Grid.Column="4"/>
<Border Background="Ivory" Grid.Row="0" Grid.Column="5"/>
<Border Background="Black" Grid.Row="0" Grid.Column="6"/>
<Border Background="Ivory" Grid.Row="0" Grid.Column="7"/>
<Border Background="Black" Grid.Row="2" Grid.Column="0"/>
<Border Background="Ivory" Grid.Row="2" Grid.Column="1"/>
<Border Background="Black" Grid.Row="2" Grid.Column="2"/>
<Border Background="Ivory" Grid.Row="2" Grid.Column="3"/>
<Border Background="Black" Grid.Row="2" Grid.Column="4"/>
<Border Background="Ivory" Grid.Row="2" Grid.Column="5"/>
<Border Background="Black" Grid.Row="2" Grid.Column="6"/>
<Border Background="Ivory" Grid.Row="2" Grid.Column="7"/>
<Border Background="Black" Grid.Row="4" Grid.Column="0"/>
<Border Background="Ivory" Grid.Row="4" Grid.Column="1"/>
<Border Background="Black" Grid.Row="4" Grid.Column="2"/>
<Border Background="Ivory" Grid.Row="4" Grid.Column="3"/>
<Border Background="Black" Grid.Row="4" Grid.Column="4"/>
<Border Background="Ivory" Grid.Row="4" Grid.Column="5"/>
<Border Background="Black" Grid.Row="4" Grid.Column="6"/>
<Border Background="Ivory" Grid.Row="4" Grid.Column="7"/>
<Border Background="Black" Grid.Row="6" Grid.Column="0"/>
<Border Background="Ivory" Grid.Row="6" Grid.Column="1"/>
<Border Background="Black" Grid.Row="6" Grid.Column="2"/>
<Border Background="Ivory" Grid.Row="6" Grid.Column="3"/>
<Border Background="Black" Grid.Row="6" Grid.Column="4"/>
<Border Background="Ivory" Grid.Row="6" Grid.Column="5"/>
<Border Background="Black" Grid.Row="6" Grid.Column="6"/>
<Border Background="Ivory" Grid.Row="6" Grid.Column="7"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="0"/>
<Border Background="Black" Grid.Row="1" Grid.Column="1"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="2"/>
<Border Background="Black" Grid.Row="1" Grid.Column="3"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="4"/>
<Border Background="Black" Grid.Row="1" Grid.Column="5"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="6"/>
<Border Background="Black" Grid.Row="1" Grid.Column="7"/>
<Border Background="Ivory" Grid.Row="3" Grid.Column="0"/>
<Border Background="Black" Grid.Row="3" Grid.Column="1"/>
<Border Background="Ivory" Grid.Row="3" Grid.Column="2"/>
<Border Background="Black" Grid.Row="3" Grid.Column="3"/>
<Border Background="Ivory" Grid.Row="3" Grid.Column="4"/>
<Border Background="Black" Grid.Row="3" Grid.Column="5"/>
<Border Background="Ivory" Grid.Row="3" Grid.Column="6"/>
<Border Background="Black" Grid.Row="3" Grid.Column="7"/>
<Border Background="Ivory" Grid.Row="5" Grid.Column="0"/>
<Border Background="Black" Grid.Row="5" Grid.Column="1"/>
<Border Background="Ivory" Grid.Row="5" Grid.Column="2"/>
<Border Background="Black" Grid.Row="5" Grid.Column="3"/>
<Border Background="Ivory" Grid.Row="5" Grid.Column="4"/>
<Border Background="Black" Grid.Row="5" Grid.Column="5"/>
<Border Background="Ivory" Grid.Row="5" Grid.Column="6"/>
<Border Background="Black" Grid.Row="5" Grid.Column="7"/>
<Border Background="Ivory" Grid.Row="7" Grid.Column="0"/>
<Border Background="Black" Grid.Row="7" Grid.Column="1"/>
<Border Background="Ivory" Grid.Row="7" Grid.Column="2"/>
<Border Background="Black" Grid.Row="7" Grid.Column="3"/>
<Border Background="Ivory" Grid.Row="7" Grid.Column="4"/>
<Border Background="Black" Grid.Row="7" Grid.Column="5"/>
<Border Background="Ivory" Grid.Row="7" Grid.Column="6"/>
<Border Background="Black" Grid.Row="7" Grid.Column="7"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="0"/>
<Border Background="Black" Grid.Row="1" Grid.Column="1"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="2"/>
<Border Background="Black" Grid.Row="1" Grid.Column="3"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="4"/>
<Border Background="Black" Grid.Row="1" Grid.Column="5"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="6"/>
<Border Background="Black" Grid.Row="1" Grid.Column="7"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="0"/>
<Border Background="Black" Grid.Row="1" Grid.Column="1"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="2"/>
<Border Background="Black" Grid.Row="1" Grid.Column="3"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="4"/>
<Border Background="Black" Grid.Row="1" Grid.Column="5"/>
<Border Background="Ivory" Grid.Row="1" Grid.Column="6"/>
<Border Background="Black" Grid.Row="1" Grid.Column="7"/>
</Grid>
はい私はそれを行うことができますが、インターネット上の多くの人々は、すべてのセルが同じサイズであるので、はるかに簡単なWPFのUniformGridを使用することを提案します。私は8x8グリッドを使うつもりだが、サイズを統一する方法がわからないと思う。(私はXamlの世界では非常に新しい) –
これを行う方法について上記の私の編集をチェックしてください。 – Robaticus
ありがとう、これは私が必要としていたものです。 –
あなたはその後、ボードの状態が含まれている64項目のコレクションにバインド8に設定MaximumRowsOrColumnsプロパティでWrapGridを使用することができるデータバインディング使用する予定の場合。
- 1. メトロスタイルのシルバーライトアプリケーション
- 2. メトロスタイルのWindows 8アプリはローカルデータベースへのアクセスをサポートしますか?
- 3. メトロスタイルのアプリで従来のアセンブリを使用
- 4. 2D配列のチェスボード
- 5. VS2011 - javascriptをデバッグできません。メトロスタイルのアプリ
- 6. メトロスタイルのアプリをバイナリイメージにバインドする方法は?
- 7. 実行可能なメトロスタイルのアプリを作る方法は?
- 8. メトロスタイルのアプリ(Windows 8)を使用したWifiネイティブ
- 9. Windows 8メトロスタイル - ゲームエンジン
- 10. メトロスタイルのAppbarフルスクリーンWPFプログラム
- 11. メトロスタイルAppのカスタムクラス属性
- 12. メトロスタイルのアプリでink-managerを使ってキャンバスを描画する方法
- 13. メトロスタイルのアプリでMarginプロパティをアニメートする方法はありますか
- 14. Excel VBA - チェスボードを作る
- 15. はチェスボード上のナイト・ツアーを最適化
- 16. メトロスタイルのアプリケーションは必ずフルスクリーンですか?
- 17. メトロスタイルのアプリケーションにローカルデータを保存する
- 18. メトロスタイルのアプリケーションUIデザイン:ページとシナリオ
- 19. キャンバスでチェスボードを作成する
- 20. Androidでチェスボードを作成する
- 21. メトロスタイルのアプリで新しいページに移動するときの価値を取得する
- 22. winrt(メトロスタイルのアプリケーション)のビューモデルへのイベントの配線
- 23. 私のチェスボードの間隔でユニコードが乱雑になる
- 24. メトロスタイルのAppでCMDをエミュレートするARMのWin 8の場合
- 25. チェスボード用のJava 2D配列が動作しない
- 26. 可変四角形のチェスボードを作成する
- 27. チェスボードの8x8グリッドパターンを生成するJavaScriptアルゴリズム
- 28. メトロスタイルAppのXAMLとC#を使用したBingマップ
- 29. Windowsフォームを使用してチェスボードを作成する
- 30. チェスボードに表示されない画像 - PHP
どの言語を使用していますか? – Ryan
@minitech私はC#を使用しています –