のみをWindows Form含む がありbuttonsます。New最終的な目標は、私が見た単純な論理ゲームを作成することですが、今のところ問題は、ボタンがクリックされたときにさまざまなアクションを実行したいということですが、現在buttonsはフォーム内のすべての一部であるため、彼に対してアクションが実行されることがありますあまりにも起こるべきではありません。明確にするために、2 つのスクリーンショットがあります。

だから、これが私が望む方法です-私はマトリックスを持っています-3x3(この場合、最後にそれが可能ですNxN)。クリックすることで、ボタンを赤くNewするなど、さまざまなことができるようにしたいと考えています。N今起こっていることは、New次のようにボタンを調べているため、ボタンもペイントされることがあります。
foreach (Control c in this.Controls)
{
if (c is Button)
{
...
したがってNew、選択されることもあるので、最終的には次のようになります。

私が今考えているのは、コードで必要なときにいつでもチェックを実行し、Newボタンを明示的に除外することですが、これは良い方法ではないと思います。私のプログラムでは、この場合の正しい解決策は何ですか? コードが必要な場合は、お問い合わせください。