Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
1 / 1 / 0
Регистрация: 19.10.2010
Сообщений: 7

Не изменяется значение в DataGridView

21.10.2010, 09:01. Показов 1955. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имею следующий код, label1 просто для проверки того что, значение выбирается. Дак вот данные в датагрид не изменяются в зависимости от выбора в комбобокс почему то Отражаются только первоначальные данные, когда departnumber=25

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
Imports System.Data.SqlClient
 
Public Class Form1
    Dim departnumber As Integer = 25
    Dim combobox1 As New ComboBox()
    Dim connection As New SqlConnection("Data Source=bla;Initial Catalog=blabla;Persist Security Info=True;User ID=sa;Password=blablabla")
    Dim querystring As String = "select ID_DEP, DeptName from dbo.depart"
    Dim depstring As String = "select ID_USER, FirstNAme, SecondName, ThirdName, EmpStatus, Dep_ID from dbo.personel where Dep_ID="
    Dim adapter As SqlDataAdapter = New SqlDataAdapter(querystring, connection)
    Dim depadapter As SqlDataAdapter = New SqlDataAdapter(depstring + Str(departnumber), connection)
    Dim dataset1 As DataSet = New DataSet
    Dim depart As DataTable = dataset1.Tables.Add("Depart")
    Dim person As DataTable = dataset1.Tables.Add("personel")
    Dim label1 As New Label()
 
 
 
 
 
 
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        connection.Open()
        If connection.State <> ConnectionState.Open Then
            MessageBox.Show("NotConnected")
            Exit Sub
        End If
        adapter.Fill(dataset1, "depart")
        combobox1.Height = 400
        combobox1.Width = 400
        combobox1.DataSource = depart
        combobox1.DisplayMember = "DeptName"
        combobox1.ValueMember = "ID_DEP"
        AddHandler combobox1.SelectedValueChanged, AddressOf ComboBox1_SelectedValueChanged
        Me.Controls.Add(combobox1)
        label1.Location = New System.Drawing.Point(454, 203)
        label1.Size = New System.Drawing.Size(39, 13)
        label1.BorderStyle = BorderStyle.Fixed3D
        Me.Controls.Add(label1)
 
        departnumber = combobox1.SelectedValue
        label1.Text = Str(departnumber)
        depadapter.Fill(dataset1, "personel")
        DataGridView1.DataSource = dataset1.Tables("personel")
        Me.Controls.Add(DataGridView1)
 
    End Sub
 
 
 
    Private Sub ComboBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs)
 
        departnumber = combobox1.SelectedValue
        label1.Text = Str(departnumber)
        dataset1.Tables("personel").Clear()
        depadapter.Fill(dataset1, "personel")
 
    End Sub
 
End Class
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.10.2010, 09:01
Ответы с готовыми решениями:

Почему когда изменяется значение ячейки DataGridView, то не вызывается обработчик события CellValueChanged?
Всё предельно просто. Скропаем таблицу dataGridView1 из двух столбцов. Первый стоблбец пусть будет обыкновеный (DataGridViewTextBoxColumn),...

Изменяется значение переменной
Привет, не понятно почему меняется значение переменной Theme.ID, в первой форме принимает значение 1,а после перехода на вторую по не...

Вычислить значение функции a = b ^2 sin (b), причем b изменяется от 0,9 до 1,7 с шагом 0,2. Найти среднее значение разности между элементами
Доброго времени суток ! Помогите решить задачу ! Нужно написать в цикле с постусловием следующее : Вычислить значение функции...

7
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
21.10.2010, 09:11
я в бэйсике,честно говоря, не понимаю,но смутило вот это.
если я правильно поняла, вы все время пытаетесь использовать адаптер, который был сориетирован на существующую уже команду, когда число было 25. то есть все время заливаете из него старым


как-то так может
PureBasic
1
2
3
dataset1.Tables("personel").Clear()
Dim depadapter As SqlDataAdapter = New SqlDataAdapter(depstring + Str(departnumber), connection)
depadapter.Fill(dataset1, "personel")
0
1 / 1 / 0
Регистрация: 19.10.2010
Сообщений: 7
21.10.2010, 09:27  [ТС]
дак запрос - string
и строка запроса формируется каждый раз. и если будет другое значение departnumber, то и строка другая. но видимо где то зарыта собака
0
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
21.10.2010, 11:23
не, смотрите
вы адаптеру задали строку, когда вызвали вот это на 10й строке

PureBasic
1
Dim depadapter As SqlDataAdapter = New SqlDataAdapter(depstring + Str(departnumber), connection)
на тот момент строка была настроена на 25. и все. адаптер всегда будет срабатывать для этой строки. потому что он был создан на нее.сколько не вызывайте fill, адаптер будет знать, что ему надо из базы делать выборку по 25.

чтобы адаптер вывел что-то другое, его надо заново пересоздать,с другим departnumber,но для того же подключения
0
1 / 1 / 0
Регистрация: 19.10.2010
Сообщений: 7
21.10.2010, 11:25  [ТС]
Хм, а как же быть тогда? ведь у меня departnumber должен меняться
0
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
21.10.2010, 11:29
так я и предложила - пересоздать адаптер перед новым заливанием таблицы)
1
1 / 1 / 0
Регистрация: 19.10.2010
Сообщений: 7
21.10.2010, 11:33  [ТС]
Ураааа..заработало....а я сразу и не врубился
0
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
21.10.2010, 11:34
ну славно
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.10.2010, 11:34
Помогаю со студенческими работами здесь

Значение в БД не изменяется
При клике по кнопке должны вноситься изменения в локальную БД, что сразу должно отразиться на экране. package...

Не изменяется значение Checkbox
Добрый день!Сделал пользовательскую форму ввода данных в БД на листе с использованием Form Control и не могу изменить значение checkbox...

Изменяется значение щетчика
програма читает с файлов числа, и выводит на екран. Не могу понять, почему щетчики i,j после исполнения цыкла увеличиваются на 1? Пишу в VS...

Почему изменяется значение?
Здравствуйте! Есть класс Cell, в котором есть List с именем Genome. Мне надо изменить случайный элемент Cell2, но вместе с ним меняется и...

Почему изменяется значение переменной?
Помогите новичку. Я пишу простейший код, но в строках 34-38 происходит что-то странное. Переменная i как-будто становится ссылкой и при...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru