私は単純なパズル ゲームのプログラムを書いています。1 つのセルを除くすべてのセルがボタンで埋められており、1 つの空のセルだけを使用してボタンを移動させて、適切に並べ替える必要があります。最初のバージョンは、8 つのボタン + 1 つの非表示の 3x3 グリッドでした。ただし、ユーザーが行と列の数を変更できるようにしたいと考えています。高さと幅を操作するには、スライダーを使用する必要があります。残念ながら、実行時にグリッドを操作する方法がわかりません。現時点で私が持っているもののスクリーンショットは次のとおりです。
質問する
7536 次
1 に答える
2
WPFがSilverlightと大きく異なる場合を除いて、列/グリッドの定義をプログラムで変更することはできませんか?
(警告、これをメモ帳に書き込むのは、チェックするVisual Studioがないため、メモリを使用するだけです)
myGrid.Columns.Clear();
myGrid.Rows.Clear();
int buttonNumber = 0;
double buttonWidth = GridWidth / numberOfColumns;
double buttonHeight = GridHeight / numberOfRows;
for (int columnNumber = 0; columnNumber < numberOfColumns; columnNumber++)
{
var column = new ColumnDefinition();
myGrid.Columns.Add(column);
for (int rowNumber = 0; rowNumber < numberOfRows; rowNumber++)
{
var row = new RowDefinition();
myGrid.Rows.Add(row);
var button = new Button();
button.Content = ++buttonNumber;
button.Width = buttonWidth;
button.Height = buttonHeight;
Grid.SetColumn(button, columnNumber);
Grid.SetRow(button, rowNumber);
}
}
于 2012-06-02T14:09:38.047 に答える