MAUI砖块转换器

涉及知识点

1 Grid 添加4*4网格

<VerticalStackLayout Padding="20">
        <Grid x:Name="grid" RowDefinitions="*,*,*,*" ColumnDefinitions="*,*,*,*" HeightRequest="300" WidthRequest="300" RowSpacing="3" ColumnSpacing="3"/>
        <Label x:Name="lblBlockNum" FontSize="Large" Margin="0,30,0,20"/>
    </VerticalStackLayout>

2 用代码在4*4单元格的按钮

 public MainPage()
	{
		
		InitializeComponent();
         blockID = 0;
        for (int i = 0; i < 16; i++)
		{
			Button btn = new Button()
			{
				BackgroundColor = Colors.Black,
				CornerRadius = 0,
				ZIndex = 1 << i
			
            };
			//btn.Clicked += Btn_Clicked;
			grid.Add(btn,i%4,i/4);
		}
	}

3 //添加按钮事件 btn.Clicked += Btn_Clicked;

  blockID = 0;
        for (int i = 0; i < 16; i++)
		{
			Button btn = new Button()
			{
				BackgroundColor = Colors.Black,
				CornerRadius = 0,
				ZIndex = 1 << i
			
            };
			btn.Clicked += Btn_Clicked;
			grid.Add(btn,i%4,i/4);
		}
	}

    private void Btn_Clicked(object sender, EventArgs e)
    {
       Button btn = (Button)sender;
		if (btn.BackgroundColor == Colors.Black)
		{
			btn.BackgroundColor = Colors.Red;
            
            blockID |= btn.ZIndex;

        }
		else { 
		btn.BackgroundColor = Colors.Black;
			blockID &= btn.ZIndex;	
		}
		lblBlockNum.Text = blockID.ToString();
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值