2016-01-20 2 views
0

У меня проблема в моей программе. У меня есть 3 кнопки, а цвет по умолчанию - белый. Когда цвет кнопки меняется на красный, моя программа будет подсчитывать, сколько кнопок красного цвета. У меня есть идея использовать Еогеасп, но он не работаетЦвет счетчика кнопок в C#

Button[] Tombol = new Button[]{B1, B2, B3} 
int counterbutton = 0; 

foreach (Button Tombol2.BackColor = Color.Red in Tombol) //I have problem here. I don't know how to solve 
{ 
    counterbutton++; 
} 
+0

Что такое 'Tombol2' кстати? –

+0

Tombol2 - все кнопки в Button [] Tombol :) –

ответ

5

Я думаю, что синтаксис право является;

foreach(Button btn in Tombol) 
{ 
    if(btn.BackColor == Color.Red) 
     counterbutton++; 
} 
+0

Спасибо за ваш ответ. Он работает :) –

0
Button[] Tombol = new Button[]{B1, B2, B3} 
int counterbutton = 0; 
foreach (Button btn in Tombol) //I have problem here. I don't know how to solve 
{ 
    if(btn.BackColor == Color.Red) 
    counterbutton++; 
} 
1
foreach(Button b in Tombol) 
{ 
    if(b.BackColor == Color.Red) 
     counterbutton++; 
} 
+0

Спасибо за ваш ответ. Оно работает :) –

0

Попробуйте

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 

      Button[] Tombol = new Button[]{B1, B2, B3}; 
      int counterbutton = 0; 
      B1.BackColor = Color.Red; 
      B3.BackColor = Color.Red; 

      foreach (Button b in Tombol) 
      { 
       if(b.BackColor == Color.Red) //I have problem here. I don't know how to solve 
       { 
        counterbutton++; 
       } 
      } 
     } 
    } 
} 
1

An Exemple с LINQ:

var counter = Tombol.Count(b=>b.BackColor == Color.Red)