Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
1 / 1 / 0
Регистрация: 09.10.2015
Сообщений: 18

Скрыть и отобразить несколько DataGridView

18.01.2016, 12:10. Показов 2249. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Так как с vb.net начал работать относительно недавно столкнулся с проблемкой:
Есть форма, разбитая на 2 панели. В одной из панелей создан DataGridView, заполняемый пользователем, а в другой панели программно создается n-ое кол-во DataGridView, также для заполнения пользователем и последующей обработкой данных.
Создание новых DataGridView во 2ой панели происходит при добавлении новых строк в DataGridView в 1ой панели.
Так вот, суть вопроса в том, как программно скрывать или отображать необходимые DataGridView из 2ой панели (постоянно вылетает ошибка "В экземпляре объекта не задана ссылка на объект.").

Вот фрагмент кода:
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
'Создание первой DataGridView во 2ой панели
Private Sub СоздатьToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles СоздатьToolStripMenuItem.Click
        SplitContainer1.Visible = True
        SplitContainer1.Panel2.Controls.Add(New_DataGridView)
 
 
        New_DataGridView.ColumnCount = 7
        With New_DataGridView
            .Name = "DataGridView0"
            .AutoSizeRowsMode =
                    DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders
            .Columns(0).HeaderText = "Год"
            .Columns(1).HeaderText = "Р, МПа"
            .Columns(2).HeaderText = "t, град.С"
            .Columns(3).HeaderText = "Мо, г/м3"
            .Columns(4).HeaderText = "Mk"
            .Columns(5).HeaderText = "Gk, г/м3"
            .Columns(6).HeaderText = "Wпласт в % от конд."
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False
            .Dock = DockStyle.Fill
        End With
    End Sub
 
'Добаление новой строки в DataGridView001 в первой панели
    Private Sub ToolStripButton5_Click(sender As Object, e As EventArgs) Handles ToolStripButton5.Click
        N_Uzla = CInt(DataGridView001.RowCount) 'определение кол-ва существующих узлов
        DataGridView001.Rows.Add(1)
        DataGridView001.Item(0, N_Uzla).Value = "Узел " & N_Uzla + 1
 
        '----- Добавление новой таблицы DataGridView в панели2
        
        SplitContainer1.Panel2.Controls.Add(New_DataGridView)
 
 
        New_DataGridView.ColumnCount = 7
        With New_DataGridView
            .Name = "DataGridView" & N_Uzla
            .AutoSizeRowsMode =
                    DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders
            .Columns(0).HeaderText = "Год"
            .Columns(1).HeaderText = "Р, МПа"
            .Columns(2).HeaderText = "t, град.С"
            .Columns(3).HeaderText = "Мо, г/м3"
            .Columns(4).HeaderText = "Mk"
            .Columns(5).HeaderText = "Gk, г/м3"
            .Columns(6).HeaderText = "Wпласт в % от конд."
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False
            .Dock = DockStyle.Fill
        End With
 
    End Sub
 
 
Private Sub DataGridView001_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView001.CellContentClick
        
        N_Tek_Uzla = CInt(DataGridView001.CurrentCell.RowIndex) 'определение текущего строки
        N_Uzla = CInt(DataGridView001.RowCount) 'Общее кол-во строк в DataGridView001
 
        MsgBox(N_Tek_Uzla)
        For Vibor_Ish = 0 To N_Uzla - 1
            If Vibor_Ish = N_Tek_Uzla Then
                Me.SplitContainer1.Panel2.Controls("DataGridView" & Vibor_Ish.ToString).Visible = True 'Ошибка здесь 
 
            ElseIf Vibor_Ish <> N_Tek_Uzla Then
                Me.SplitContainer1.Panel2.Controls("DataGridView" & Vibor_Ish.ToString).Visible = False 'Ошибка здесь 
 
            End If
        Next
 
    End Sub
А также, как через Controls добавлять строки в определенный DataGridView?
VB.NET
1
Me.Controls("DataGridView" & N_Tek_Uzla.ToString).Rows.Add(1) 'Не работает
Заранее спасибо, за помощь!
Миниатюры
Скрыть и отобразить несколько DataGridView  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.01.2016, 12:10
Ответы с готовыми решениями:

Как скрыть строки в dataGridView и отобразить всё обратно
Доброго времени суток! Подскажите как сделать правильно. На форме есть checkBox и dataGridView. При нажатии на checkBox в dataGridView...

Во втором DataGridView отобразить данные, используя значения выбранной строчки первого DataGridView
Доброго времени суток, Ув. Форумчане! Такой вопрос: Во во втором DataGridView отобразить данные используя значения выбранной строчки...

Отобразить/скрыть div по клику
Здравствуйте! Я не очень разбираюсь в яве, но нужен код, по которому дивы в меню будут раскрываться по клику на них и закрываться по клику...

20
Модератор
Эксперт .NET
 Аватар для Yury Komar
4372 / 3442 / 512
Регистрация: 27.01.2014
Сообщений: 6,266
19.01.2016, 09:36
Студворк — интернет-сервис помощи студентам

Не по теме:

Kirill87, пожалуйста... Будьте внимательней. ведь одна маленькая ошибка в начале вызовет огромный геморрой в конце...



Добавлено через 18 часов 39 минут
Kirill87, в дополнение, я бы посоветовал вам заменить таблицу в левой части на обычный ListBox, ведь у вас всего одна колонка в ней, выполняющая функцию обычного списка.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.01.2016, 09:36

Скрыть/отобразить строки в списке
Здравствуйте! Пишу код для кнопочки (Access), которая должна будет скрывать/отображать строки, у которых значение в поле (по которому идет...

Скрыть одно, отобразить другое
//В рабочей области отображена кнопка с надписью &quot;Нажмите правую клавишу мыши над рабочей областью&quot;. //После нажатия правой клавиши...

Скрыть и отобразить главную форму
Подскажите пожалуйста. В моем проекте 2 формы Form1 и Form2, Form1 является главной формой. Как сделать так, чтобы при вызове Form2, Form1...

Скрыть/отобразить скрытые папки
Как можно реализовать данную, ну скажем функцию? Пробовал через реестр, но результата нет (даже при редактировании реестра вручную).

Скрыть и отобразить курсор мыши
Добрый день.Пытаюсь заставить пропадать и появляться курсор мыши(и кое-что другое) #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru