2017-03-28 106 views
0

我正在构建一个游戏,其中一个“机制”是通过单击三个ImageButton中的一个(代表钻,锤和刷子)。Xamarin C#:ImageButton,在选择另一个按钮时取消选择一个按钮

我想标记所选的按钮,但只有通过选择第二个按钮才能切换工具。有没有任何干净的方式取消选择/选择按钮?

当前代码:

 if (drillbutton.Selected) 
     { 
      brushbutton.Selected = false; 
      hammerbutton.Selected = false; 
     } 
     else if(hammerbutton.Selected) 
     { 
      drillbutton.Selected = false; 
      brushbutton.Selected = false; 
     } 
     else if(brushbutton.Selected) 
     { 
      drillbutton.Selected = false; 
      hammerbutton.Selected = false; 
     } 

必须有一个更简单的方法,对吧?

回答

0

你可以相同的点击处理程序分配给每一个按钮,像这样:

private void SelectButton(object sender, EventArgs args) { 

    // you will have to have an IEnumerable that contains your set of buttons 
    foreach(var b in buttons) { 
    if (b == (Button)selected) b.Selected = true else b.Selected = false; 
    } 
} 
+0

哦,为什么我没有想到的是,谢谢! –

相关问题