Пример поиска по DataGriedView
Категория: .NET
2011-09-03 17:23:13
code: #csharp
- /// <summary>
- /// Поиск дебитора по DataGridVie
- /// </summary>
- List<DataGridViewRow> searchedRows;
- int currentRow;
- private void btn_search_Click(object sender, EventArgs e) //обработка события нажатия на кнопку Искать
- {
- searchedRows = new List<DataGridViewRow>();
- string debName = txbx_searchedDebName.Text.Trim();
- string debDataPassport = txbx_searchedDebDataPassport.Text.Trim();// ввод в текстбокс данных паспорта
- string debPhoneNumber = txbx_searchedDebPhoneNumber.Text.Trim();//ввод в текстбокс номера телефона
- foreach (DataGridViewRow row in dgv_debitors.Rows) //выбор из DataGridView
- {
- if (row.Cells["Name"].FormattedValue.ToString().Contains(debName) &&
- row.Cells["DataPassport"].FormattedValue.ToString().Contains(debDataPassport) &&
- row.Cells["PhoneNumber"].FormattedValue.ToString().Contains(debPhoneNumber))
- searchedRows.Add(row);
- }
- if (searchedRows.Count == 0)
- {
- MessageBox.Show("По данному запросу ничего не найдено");
- btn_nextRow.Enabled = false; //нажатие на кнопку следующий по списку
- return;
- }
- MessageBox.Show("Найдено " +searchedRows.Count+ " записей");
- btn_nextRow.Enabled = true;
- currentRow = -1;
- //переход на нужную ячейку
- btn_nextRow_Click(null, null);
- }
- /// <summary>
- /// Обработка события при нажатии кнопки Next
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btn_nextRow_Click(object sender, EventArgs e)
- {
- if (currentRow == searchedRows.Count - 1)
- currentRow = -1;
- currentRow++;
- dgv_debitors.CurrentCell = searchedRows[currentRow].Cells[1];
- }
Поделиться: