先佈局分成10行10列
for (int i = 0; i < 10; i++)
{
ColumnDefinition colDef = new ColumnDefinition();
gridGame.ColumnDefinitions.Add(colDef);
RowDefinition rowDef = new RowDefinition();
gridGame.RowDefinitions.Add(rowDef);
}
再爲每個空格填入一個button,並在button中顯示他所在的行列
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
Button btn = new Button();
btn.Content = i + "," + j;
//通過代碼修改控件的Grid.Row屬性
Grid.SetRow(btn, i);
Grid.SetColumn(btn, j);
gridGame.Children.Add(btn);
}
}
顯示效果如下
現在看到能夠正常生成所以現在把button去掉,用img顯示
Image img = new Image();
img.Source = new BitmapImage(new Uri("1.jpg",UriKind.Relative));//圖片路徑
Grid.SetRow(img, i);
Grid.SetColumn(img, j);
gridGame.Children.Add(img);
效果如下:
怎樣生成隨機數呢??
Random random = new Random();
int i1= random.Next(0, 99);//生成一個>=0,<99的隨機整數
int i2= random.Next(3, 9);//生成一個>=3,<9的隨機整數
好了,知道了原理那麼就可以隨機生成1-9個隨機圖片了,只需把上面顯示固定連接的照片修改一下
int imgName = random.Next(1, 10);//生成>=1,<10的隨機數
Image img = new Image();
//代碼給Source屬性賦值
img.Source = new BitmapImage(new Uri("Images/"+imgName+".png",UriKind.Relative));//圖片路徑
Grid.SetRow(img, i);
Grid.SetColumn(img, j);
gridGame.Children.Add(img);
好了效果圖如下:
ok,看來隨機生成一張照片是沒有問題了。
至此,連連看佈局就完成了。。。