Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 27.03.2019
Сообщений: 15
1

Исключение не обработано.- System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."

10.05.2019, 21:47. Показов 788. Ответов 3

Кто знает из-за чего возникает такая проблема? + Скриншот субд таблицы и исключение

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
  /// <summary>
        /// Загрузка продаж
        /// </summary>
        private void LoadSale()
        {
            //пишем SQL по отбору данных по продаж
            var sql = @"select sid,Aid,cid,Cfm,Atitle,Snum,SDa from Sale, Client, Arms where Sfmid=cid and stitleid=aid";     
            var da = new OleDbDataAdapter(sql, db.Connection);
            var ds = new DataTable();
            //связываем отобранные данные с компонентом datagridview
            dataGridView3.DataSource = ds;
            //не показываем столбец с ИД
            dataGridView3.Columns["Aid"].Visible = false;
            dataGridView3.Columns["Cid"].Visible = false;
            dataGridView3.Columns["sid"].Visible = false;
            //устанавливаем ширину столбца
            dataGridView3.Columns["Atitle"].Width = 200;
            dataGridView3.Columns["Atitle"].HeaderText = @"Оружия";
            dataGridView3.Columns["Cfm"].Width = 200;
            dataGridView3.Columns["Cfm"].HeaderText = @"Клиент";
            dataGridView3.Columns["Snum"].Width = 200;
            dataGridView3.Columns["Snum"].HeaderText = @"Количество";
            dataGridView3.Columns["SDa"].Width = 200;
            dataGridView3.Columns["SDa"].HeaderText = @"Дата продажи";
        }
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Миниатюры
Исключение не обработано.- System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."   Исключение не обработано.- System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2019, 21:47
Ответы с готовыми решениями:

System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."
Делал программу по ролику, там все работает, хотя все так же сделал....

System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта"
Делаю изменение в отдельной форме.Использую класс public static class DataFromBase { ...

System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта." comboBox1 было null
Помогите пожалуйста кто знает в чем проблема? System.NullReferenceException: &quot;Ссылка на объект не...

NullReferenceException не обработано(Ссылка на объект не указывает на экземпляр объекта)
Приложение должно сохранять значения ячеек DataGridView2 в, заранее созданный, points.xml Но 2010...

3
Администратор
Эксперт .NET
13779 / 11166 / 4557
Регистрация: 17.03.2014
Сообщений: 22,518
Записей в блоге: 1
11.05.2019, 09:55 2
Ruslan177, очевидно в dataGridView3 нет колонки с именем Aid потому что ты забыл заполнить таблицу данными перед привязкой.
0
0 / 0 / 0
Регистрация: 27.03.2019
Сообщений: 15
11.05.2019, 11:27  [ТС] 3
Возникает ошибка в dataGridView3 со всеми полями Исключение не обработано.- System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта.".

Кто знает из-за чего возникает такая проблема? + Скриншот субд таблицы и исключение

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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Магазин
{
    public partial class Form1 : Form
    {
        /// <summary>
        /// Главная форма приложения
        /// </summary>
        public Form1()
        {
            InitializeComponent();
            //Загружаем данные по оружии
            LoadArms();
            //Загружаем данные по клиентам
            LoadClient();
            //Загружаем данные по продаже
            LoadSale();
        }
        /// <summary>
        /// Загрузка оружии
        /// </summary>
        private void LoadArms()
        {
            //пишем SQL по отбору данных по оружии, сортируем по названию
            var sql = @"select Aid,Atitle,Aus,Abw,Aud,Aki,Atp from Arms order by Atitle";
            var da = new OleDbDataAdapter(sql, db.Connection);
            var ds = new DataTable();
            da.Fill(ds);
            //связываем отобанные данные с компонентом datagridview
            dataGridView1.DataSource = ds;
            //не показываем столбец с ИД
            dataGridView1.Columns["Aid"].Visible = false;
            //устанавливаем заголовок столбца
            dataGridView1.Columns["Atitle"].HeaderText = @"Название";
            //устанавливаем ширину столбца
            dataGridView1.Columns["Atitle"].Width = 200;
            dataGridView1.Columns["Aus"].HeaderText = @"Назначение";
            dataGridView1.Columns["Aus"].Width = 200;
            dataGridView1.Columns["Abw"].HeaderText = @"Боевые возможности";
            dataGridView1.Columns["Abw"].Width = 200;
            dataGridView1.Columns["Aud"].HeaderText = @"Способ удержания";
            dataGridView1.Columns["Aud"].Width = 200;
            dataGridView1.Columns["Aki"].HeaderText = @"Калибр";
            dataGridView1.Columns["Aki"].Width = 200;
            dataGridView1.Columns["Atp"].HeaderText = @"Темп стрельбы";
            dataGridView1.Columns["Atp"].Width = 200;
        }
        /// <summary>
        /// Загрузка клиентов
        /// </summary>
        private void LoadClient()
        {
            //пишем SQL по отбору данных по клиентов
            var sql = @"select cid,Cfm,CLi,CDa from Client";
            var da = new OleDbDataAdapter(sql, db.Connection);
            var ds = new DataTable();
            da.Fill(ds);
            //связываем отобанные данные с компонентом datagridview
            dataGridView2.DataSource = ds;
            //не показываем столбец с ИД
            dataGridView2.Columns["Cid"].Visible = false;
            /* dataGridView1.Columns[""].Width = 200;
             dataGridView1.Columns[""].HeaderText = @"";*/
            //устанавливаем ширину столбца
            dataGridView2.Columns["Cfm"].Width = 200;
            //устанавливаем заголовок столбца
            dataGridView2.Columns["Cfm"].HeaderText = @"ФИО";
            dataGridView2.Columns["CLi"].Width = 200;
            dataGridView2.Columns["CLi"].HeaderText = @"Лицензия";
            dataGridView2.Columns["CDa"].Width = 200;
            dataGridView2.Columns["CDa"].HeaderText = @"Дата рождения";
 
        }
        /// <summary>
        /// Загрузка продаж
        /// </summary>
        private void LoadSale()
        {
            //пишем SQL по отбору данных по продаж
            //  var sql = @"select sid,Aid,cid,Atitle,Cfm,Snum,SDa from Sale, Client, Arms where Sfmid=cid and stitleid=aid";     
            var sql = @"select Aid,Sid,Cid,Atitle,Cfm,Snum,SDa from Client,Arms,Sale where Sfmid=cid and stitleid=aid";
            var da = new OleDbDataAdapter(sql, db.Connection);
            var ds = new DataTable();
            //связываем отобанные данные с компонентом datagridview
            dataGridView3.DataSource = ds;
            //не показываем столбец с ИД
            
            dataGridView3.Columns["sid"].Visible = false;
            dataGridView3.Columns["Aid"].Visible = false;
            dataGridView3.Columns["Cid"].Visible = false;
            //устанавливаем ширину столбца
            dataGridView3.Columns["Atitle"].Width = 200;
            dataGridView3.Columns["Atitle"].HeaderText = @"Оружия";
            dataGridView3.Columns["Cfm"].Width = 200;
            dataGridView3.Columns["Cfm"].HeaderText = @"Клиент";
            dataGridView3.Columns["Snum"].Width = 200;
            dataGridView3.Columns["Snum"].HeaderText = @"Количество";
            dataGridView3.Columns["SDa"].Width = 200;
            dataGridView3.Columns["SDa"].HeaderText = @"Дата продажи";
        }
        
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void DataGridView3_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
 
        }
    }
}
0
Миниатюры
Исключение не обработано.- System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."  
https://vk.com/a.tsarev83
786 / 508 / 255
Регистрация: 06.02.2012
Сообщений: 1,697
11.05.2019, 12:52 4
Ruslan177,
Для сокрытие колонок используйте индексацию

C#
1
2
3
4
//Массив чисел, для сокрытие колонок.
int [] columns = col [] {0, 1, 2 };
for(int i =0; i < columns.Length;i++)
     dataGridView3.Columns[columns[i]].Visible = false;
Для изменения имен колонок, используйте алиасы.
SQL
1
var SQL = "select sid, Aid, cid, Cfm AS [Клиент], Atitle AS [Оружия],Snum AS [Количество],SDa AS [Дата продажи] from Sale, Client, Arms where Sfmid=cid and stitleid=aid";
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.05.2019, 12:52

Sql запрос. Исключение "Ссылка на объект не указывает на экземпляр объекта"
В общем, мне нужно создать приложение на Windows Forms, одной из множества функций которого...

Ошибка "Ссылка на объект не указывает на экземпляр объекта"
Уже несколько часов пытаюсь решить эту проблему,прошу у Вас помощи форумчане! То что выделено...

Выдают ошибку при компиляции "Ссылка на объект не указывает на экземпляр объекта"
Помогите мне разобраться плизз Короче выдает &quot;Ссылка на объект не указывает на экземпляр объекта&quot; ...

System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."
Здравствуйте. В 59 строке выскакивает исключение NullReferenceException, в чем проблема? using...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.