2016-01-19 2 views
0

Я хочу добавить значение в представление сетки через раскрывающийся список с помощью кнопки. Я хочу, чтобы ddTN.SelectedItem.value в представлении Grid был уникальным. Нет дублирования Как проверить каждую строку для ddTN.SelectedItem.value перед добавлением нового значения ddTN.SelectedItem.value в представление Grid?ASP.NET Как мне проверить строку в gridview?

Это коды, которые у меня есть, и он продолжает сравнивать значение с первым значением в gridview. Не другие.

Я не хочу использовать флажок и т. Д. Весь пример, который я нашел, нужно использовать с помощью флажка.

protected void Insert(object sender, EventArgs e) 
{ 
    int i = 0; 
    var p = 1; 
    DataControlFieldCell cell = GridView1.Rows[i].Cells[p] as DataControlFieldCell; 
    if (cell.Text != ddTN.SelectedItem.Value) 
    { 
     dt.Rows.Add(ddTN.SelectedValue, ddDuration.SelectedValue); 
     ViewState["Customers"] = dt; 
     this.BindGrid(); 
     label.Text = ""; 
     p++; 
    } 
    else 
    { 
     label.Text = "Exercise already inserted"; 
    } 
} 

ответ

0

Похоже, вы намеревались перебирать предметы в сетке, но вы забыли механизм петлирования. В вашем коде он всегда проверяет только первый элемент, потому что i инициализирован до 0 и никогда не изменяется.

Попробуйте использовать петлевой механизм как петля for или петлю while. Или, если вы знаете элементы в сетке с самого начала, возможно, используйте хэш-таблицу для быстрой проверки того, существует ли уже выбранный элемент.

Продолжайте пытаться, вы почти у цели!

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