Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Visual Basic .NET AutoScroll формы https://www.cyberforum.ru/ vb-net/ thread2358585.html
Форма с AutoScroll, при открытии ползунок находится в середине формы, как сделать чтобы при открытии формы Scroll был всегда в верхней позиции?
Ввести строку и определить её длину, количество слов в ней, количество прописных букв Visual Basic .NET
Парни помогите разработать программу, которая получает с консоли строку, и выводит:Её длину,количество слов в ней,количество прописных букв.В VB.net.Помогите пожалуйста,что-то голова совсем не варит.
Visual Basic .NET RegExp, для поиска всех данных после ключевого слова https://www.cyberforum.ru/ vb-net/ thread2358527.html
Мне нужно регулярное выражение, которое будет доставать все \d+:\d+:\d+;\s\d+\.\d+; т.е. те что в тексте под спойлером выделены жирным, только у строк включительно где есть R_00.sgt и между ними ...
Visual Basic .NET Как определить статус редактируемой ячейки DataFridView? Как запретить редактирование определенных столбцов DataGridView https://www.cyberforum.ru/ vb-net/ thread2358457.html
Доброго времени суток, уважаемые! Снова за советом к бывалым и умудренным опытом коллегам. Есть DataGridView1. Вопрос 1. Как определить индекс редактируемой ячейки? А точнее нужно определить...
Visual Basic .NET Математическая формула
Добрый вечер, помогите решить задание на VB, необходимо решить формулу по математике, есть небольшие наброски кода, но так, как я новичок, не особо могу понять, в правильном направлении я двигаюсь...
Visual Basic .NET Аффинные преобразования https://www.cyberforum.ru/ vb-net/ thread2358093.html
помогите пожалуйста с задачкой:help: отражение получилось, остальное не выходит :umbrage: Для треугольник ABC с координатами вершин: A (x1,y1), B (x2,y2), C (x3,y3) необходимо выполнить три...
Visual Basic .NET Отображение столбцов GridView Здравствуйте. Грид заполняется из базы, полей в базе очень много. В гриде должны отображаться только определённые поля. Выборку только этих полей из базы делать не получится,потому что остальные... https://www.cyberforum.ru/ vb-net/ thread2358012.html Visual Basic .NET Label, дополнить пробелами свободное место
Здравствуйте. На форме лабелы с названием полей (AutoSize=True), и лабелы с данными (AutoSize=False). Лабелы с данными должны выглядеть как строки, с подчёркиванием, до конца формы. Необходимо...
Visual Basic .NET Открыть все файлы каталога через For Each Доброго времени суток, коллеги. Теоретически понимаю, а на практике не сдюжил. К Вам за помощью. Есть каталог с файлами одного типа (Excel). Название каталога хранится в переменной stProjectFolder... https://www.cyberforum.ru/ vb-net/ thread2357776.html Visual Basic .NET Наложение нескольких изображений. Сохранение полученного изображения Доброго времени суток, коллеги. В проекте есть ряд изображений, которые накладываются друг на друга в зависимости от хода выполнения программы. В результате получается итоговое изображение из... https://www.cyberforum.ru/ vb-net/ thread2357658.html
Необходимо разобраться с математическими формулами Visual Basic .NET
Здравствуйте, есть такое задание, которое нужно решить: Математическая формула: z = (e^(|xy^2|)/cos^2y)+4√x^2-1 X=-1,7 Y=0,1
Visual Basic .NET Заполнение массива Есть массив 8x8.Я должен прийти снизу массива в самый вверх.В самом низу у меня есть строка,где случайно выбирается точка старта и обозначается тройкой.К примеру рандом выбрал 4: 0 0 0 0 0 0 0 0... https://www.cyberforum.ru/ vb-net/ thread2357602.html
4 / 4 / 0
Регистрация: 24.02.2016
Сообщений: 215
26.11.2018, 12:21  [ТС] 0

Запрет ввода в ячейки DataGridView символов кроме цифр и "," - Visual Basic .NET - Ответ 13096124

26.11.2018, 12:21. Показов 1619. Ответов 4
Метки (Все метки)

Ответ

ЕЩЕ ДОПОЛНЕНИЕ...
Как не странно в описании тут: https://docs.microsoft.com/ru-... work-4.7.2
про события обработки нажатия на кнопки вообще ничего не сказано. А в VisualStudio такие события есть. Но они не работают :/

Добавлено через 55 минут
Orlangur1991,
В вашем коде добавил сообщения отладчика:
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 Private Sub dataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
        Debug.Print("Обработка события EditingControlShowing")
        RemoveHandler e.Control.KeyPress, AddressOf Column1_KeyPress
        If DataGridView1.CurrentCell.ColumnIndex = num_col Then 'индекс целевого столбца
            Dim tb As TextBox = TryCast(e.Control, TextBox)
            If tb IsNot Nothing Then
                AddHandler tb.KeyPress, AddressOf Column1_KeyPress
            End If
        End If
    End Sub
 
 
    Private Sub Column1_KeyPress(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles DataGridView1.KeyPress
        Debug.Print("Обработка события Column1_KeyPress")
        ' Разрешается воод только чисел и точки
        If Not Char.IsControl(e.KeyChar) AndAlso Not Char.IsDigit(e.KeyChar) AndAlso e.KeyChar <> "." Then
            e.Handled = True
        End If
        ' только одна точка
        If e.KeyChar = "." AndAlso (TryCast(sender, TextBox)).Text.IndexOf(".") > -1 Then
            e.Handled = True
        End If
        ' запрещается точка в начале строки
        If e.KeyChar = "." AndAlso (TryCast(sender, TextBox)).TextLength = 0 Then
            e.Handled = True
        End If
    End Sub
 
 
    Private Sub DataGridView1_CellEndEdit(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
        Debug.Print("Обработка события CellEndEdit")
        'запрещаем . быть последним символом
        If DataGridView1.CurrentCell.ColumnIndex = num_col Then 'индекс целевого столбца
            Dim n As String = DataGridView1.Item(num_col, e.RowIndex).Value.ToString
            Dim m As String = Microsoft.VisualBasic.Strings.Right(n, 1)
            If m = "," Then
                DataGridView1.Item(num_col, e.RowIndex).Value = n.Replace(m, "")
            End If
        End If
 
        Dim intDGVRowIndex As Integer
        Dim intDGVColumnIndex As String
        intDGVRowIndex = e.RowIndex
        intDGVColumnIndex = e.ColumnIndex
        Call ReCaltTab(intDGVRowIndex)
    End Sub
В отладчике не выдается сообщение о начале обработки события Column1_KeyPress
Что то не правильно сделал в коде?

Добавлено через 43 минуты
Orlangur1991,
Прошел код по шагам. Разобрался. Ошибка в коде:
Должно быть НЕ РАВНО
VB.NET
1
If DataGridView1.CurrentCell.ColumnIndex <> num_col Then 'индекс целевого столбца


Вернуться к обсуждению:
Запрет ввода в ячейки DataGridView символов кроме цифр и "," Visual Basic .NET
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2018, 12:21
Готовые ответы и решения:

Запрет ввода символов кроме цифр в TextBox
как запретить ввод букв и остальных символов кроме цифр в textbox'e

Запрет ввода всех символов кроме цифр и запятой
Здравствуйте как можно сделать так чтобы в textBox можно было бы вводить с клавиатуры лишь цифры и...

Запрет ввода любых символов кроме цифр в консоли
Ребята подскажите пожалуйста можно ли как-то разрешать ввод в консоль только цифр. Я делаю проверку...

"Приведение типа "|DBNull" к типу "String" при попытке загрузить данные из ячейки DataGridView в ComboBox
Доброго времени суток! Сама ошибка &quot;Приведение типа &quot;|DBNull&quot; к типу &quot;String&quot; является...

4
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2018, 12:21

Запрет ввода в текстбокс кроме цифр от 1 до 9
Добрый день! Подскажите, как можно запретить ввод в текстбокс всего (букв и символов, в т.ч. и...

Запрет ввода всего кроме положительных цифр
Пожалуйста, помогите разобраться. Необходимо разрешить ввод только чисел (положительных). в коде:...

Запрет ввода "#","№","номер" в TextBox
Собственно задача такова: имеется TextEdit. Хотелось бы, чтобы туда нельзя было вводить...

При вводе любых символов (кроме "1" - "5") выводить ошибку
var x,y:integer; z:real; n:byte; begin writeln(' '); writeln('Введите длину отрезка: ');...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru