Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2012, 19:58   #1
DENIS_POLOTSK
Пользователь
 
Регистрация: 28.05.2012
Сообщений: 29
По умолчанию Фильтрация в DataGridView

Пытаюсь по вводу в TextBox, фильтровать данные в DataGridView, когда все данные в DataGridView заполнены с маленькой буквы, фильтрует отлично, но когда, пытаюсь написать заглавную букву, нажимаю shift, затем букву, в результате по большой букве не фильтрует, так как считывает shift как нажатая клавиша, и не фильтрует. Вот код:
Код:
 public void textBox1_KeyUp(object sender, KeyEventArgs e)
        {
            if (textBox1.TextLength == 0 || e.KeyValue == 16)
            {
                try
                {
                    UpdateTable();
                }
                catch (FileNotFoundException Ex)
                { MessageBox.Show("Файл не найден", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); }
                catch (XmlException Ex)
                { MessageBox.Show("Повреждена структура файла, замените Xml файл", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); }
            }
            if (SearchParam.SelectedIndex == 0)
            {
                for (int i = HistoryViewGrid.RowCount - 1; i >= 0; i--)
                {
                    if (HistoryViewGrid.Rows[i].Cells[0].Value.ToString().ToLower().IndexOf(textBox1.Text.ToLower()) != 0)
                        HistoryViewGrid.Rows.RemoveAt(i);
                }
            }
            if (SearchParam.SelectedIndex == 1)
            {
                for (int i = HistoryViewGrid.RowCount - 1; i >= 0; i--)
                {
                    if (HistoryViewGrid.Rows[i].Cells[2].Value.ToString().ToLower().IndexOf(textBox1.Text.ToLower()) != 0)
                        HistoryViewGrid.Rows.RemoveAt(i);
                }
            }
            if (SearchParam.SelectedIndex == -1)
                MessageBox.Show("Выберите критеий поиска","Внимание",MessageBoxButtons.OK);
        }

        private void Arhiv_FormClosed(object sender, FormClosedEventArgs e)
        {
            textBox1.Clear();
        }
    }
DENIS_POLOTSK вне форума Ответить с цитированием
Старый 16.06.2012, 21:47   #2
muradov
Пользователь
 
Регистрация: 05.05.2012
Сообщений: 39
По умолчанию

Подпишись на событие TextChanged, а не на KeyUp
muradov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DataGridView Ramirag C# (си шарп) 0 14.08.2011 11:57
C# DataGridView Sanuch89 Помощь студентам 2 04.08.2011 12:52
C#, datagridView Namolem Помощь студентам 1 12.05.2010 01:18
DataGridView bondik Общие вопросы .NET 2 13.05.2009 19:42
c# + datagridview MAcK Общие вопросы .NET 2 06.06.2008 15:57