wpf 編寫連連看佈局

先佈局分成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,看來隨機生成一張照片是沒有問題了。

至此,連連看佈局就完成了。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章