Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
5 / 5 / 5
Регистрация: 16.12.2013
Сообщений: 463

При работе со строками выдает ошибку

09.10.2016, 17:00. Показов 763. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. При всех попытках сделать какие-либо операции над строками в dataGridView1, выплывает ошибка как на прикрепленном скрине. Мне нужно дать названия городов строкам.
Пробовала так:
C++
1
2
3
4
5
6
    for (int i = 0; i < 5; ++i)
{
//Добавляем строку, указывая значения каждой ячейки по имени (можно использовать индекс 0, 1, 2 вместо имен)
dataGridView1->Rows->Add();
 
}
И так:
C++
1
2
3
4
 for (int i = 0; i < dataGridView1->Rows->Count; i++)
            {
                this->dataGridView1->Rows[i]->HeaderCell->Value = "text to show in header";
            }
Все время одна и та же ошибка
Весь код:
Кликните здесь для просмотра всего текста

C++
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#pragma once
 
namespace My3 {
 
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
 
    /// <summary>
    /// Сводка для Form1
    /// </summary>
    public ref class Form1 : public System::Windows::Forms::Form
    {
    public:
        Form1(void)
        {
            InitializeComponent();
            //
            //TODO: добавьте код конструктора
            //
        }
 
    protected:
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        ~Form1()
        {
            if (components)
            {
                delete components;
            }
        }
    private: System::Windows::Forms::DataGridView^  dataGridView1;
    protected: 
    private: System::Windows::Forms::DataGridViewTextBoxColumn^  Column1;
    private: System::Windows::Forms::DataGridViewTextBoxColumn^  Column2;
 
    private:
        /// <summary>
        /// Требуется переменная конструктора.
        /// </summary>
        System::ComponentModel::Container ^components;
 
#pragma region Windows Form Designer generated code
        /// <summary>
        /// Обязательный метод для поддержки конструктора - не изменяйте
        /// содержимое данного метода при помощи редактора кода.
        /// </summary>
        void InitializeComponent(void)
        {
            this->dataGridView1 = (gcnew System::Windows::Forms::DataGridView());
            this->Column1 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
            this->Column2 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
            (cli::safe_cast<System::ComponentModel::ISupportInitialize^  >(this->dataGridView1))->BeginInit();
            this->SuspendLayout();
            // 
            // dataGridView1
            // 
            this->dataGridView1->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize;
            this->dataGridView1->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^  >(2) {this->Column1, 
                this->Column2});
            this->dataGridView1->Location = System::Drawing::Point(27, 26);
            this->dataGridView1->Name = L"dataGridView1";
            this->dataGridView1->Size = System::Drawing::Size(477, 341);
            this->dataGridView1->TabIndex = 0;
            // 
            // Column1
            // 
            this->Column1->HeaderText = L"Гданец В.В.";
            this->Column1->Name = L"Column1";
            // 
            // Column2
            // 
            this->Column2->HeaderText = L"Демко Д.О.";
            this->Column2->Name = L"Column2";
            // 
 
        for (int i = 0; i < 5; ++i)
{
//Добавляем строку, указывая значения каждой ячейки по имени (можно использовать индекс 0, 1, 2 вместо имен)
dataGridView1->Rows->Add();
 
}
 
            
        /*    for (int i = 0; i < dataGridView1->Rows->Count; i++)
            {
                this->dataGridView1->Rows[i]->HeaderCell->Value = "text to show in header";
            }*/
            // Form1
            // 
            this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
            this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
            this->ClientSize = System::Drawing::Size(540, 406);
            this->Controls->Add(this->dataGridView1);
            this->Name = L"Form1";
            this->Text = L"Form1";
            (cli::safe_cast<System::ComponentModel::ISupportInitialize^  >(this->dataGridView1))->EndInit();
            this->ResumeLayout(false);
 
        }
#pragma endregion
    };
}

Подскажите пожалуйста, почему происходит эта ошибка и как все таки правильно дать названия строкам?
Миниатюры
При работе со строками выдает ошибку  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.10.2016, 17:00
Ответы с готовыми решениями:

Выдает ошибку при работе
Скачал для Unity 3d плагин ProBuilder. Все запустилось, но при нажатии на вторую кнопку (рисунок 1), программа вырубается и появляется...

Не выдает ошибку при работе
При работе кода ошибку браузер не пишет, но и в бд csv не записывается. Вот код &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta...

Выдает ошибку 438 при работе с Selection
Доброго времени суток! На паре дали задание написать программу, чтобы при выделении ячеек и запуске программы на второй лист копировался...

1
5 / 5 / 5
Регистрация: 16.12.2013
Сообщений: 463
09.10.2016, 18:13  [ТС]
Ответ: выше указанный код добавления строк надо было добавлять после объявления ф-ции InitializeComponent(); в начале кода
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.10.2016, 18:13
Помогаю со студенческими работами здесь

Интерпретатор выдает ошибку при работе с циклом loop
Здравствуйте! Собственно вот и ошибка Код программы: (DEFUN FACT (X) (COND ((= X 0) 1) (T (* X (FACT (- X 1))) )

Функция выдает ошибку при работе с отрицательными числами
Доброе время суток! Есть функция вычисляющая значения от х0 до xn с шагом. Вопрос такой, что в ней не так, что функция выдает ошибку при...

Программа выдает ошибку при работе с символьным массивом
Решил замутить такую игрульку. Суть проста: дана карта 15х15, необходимо на этой карте отыскать данную точку с произвольными координатами...

Компилятор не ругается, но при запуске выдает ошибку о работе с памятью
Здравствуйте! Не могу понять в чем ошибка. Помогите, пожалуйста! Компилятор не ругается, но при запуске выдает ошибку о работе с памятью. ...

Почему выдает ошибку при работе с большим файлом, напишите как исправить ?
Помогите пожалуйста, данная программа берет текст из документа 1.txt ( если документ маленький то всё работает а если большой то выдает...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru