2015-03-04 2 views
0

Я пытаюсь найти, если элемент, который я хочу добавить, уже присутствует в datagridview или нет?Как найти элемент, уже присутствующий в datagridview

if (dgvIndex >= 1) 
{ 
    foreach (dataGridView1 row in dataGridView1.Rows) 
    { 
     if (row.cells[1].value == dr[1].ToString()) 
     { 
      MessageBox.Show("Item already added"); 
     } 
    } 
} 

есть ли это правильно?

Я получаю сообщение об ошибке: datagridview1 является «полем», но используется как «тип».

ответ

3

foreach ключевое слово ожидает, что вы что-то вроде:

foreach(DataGridViewRow row in dataGridView1.Rows) 

The DataGridView для задания типа переменной row. Компилятор говорит вам, что dataGridView1 не является типом.

Я думаю, что у вас есть другие синтаксические ошибки для исправления, например, корпус на row.cells[1].value. В любом случае, надеюсь, это поможет вам немного ближе к компиляции.

+0

да сделал. теперь «ячейки» в этой строке «if (dataGridView1.Rows.cells (1) .value == dr [1] .ToString())» показывает ошибку. Как это решить, и почему его показ? –

+0

С этим битом кода есть несколько ошибок. Прежде всего, dataGridView1.Rows вернет коллекцию, а не одну строку. Вам нужно указать определенную строку, например: dataGridView1.Rows [someNumber] '. Далее, C# чувствителен к регистру. 'DataGridViewRow' не имеет свойства с именем' cells'; это «Ячейки» с капиталом C. Далее, чтобы получить ячейку из списка, вам нужно использовать квадратные скобки, а не круглые скобки: «Ячейки [1]», а не «Ячейки (1)». Сообщения об ошибках в Visual Studio в сочетании с небольшим количеством поисковых запросов должны быть все, что вам нужно, чтобы понять синтаксические ошибки, подобные этим. – adv12

+0

Я хочу, чтобы проверить, имеются ли данные в представлении datagridview или нет. Как я должен это проверить? –

Смежные вопросы