|
|
|
Повторное заполнение DataSet
|
|||
|---|---|---|---|
|
#18+
Умные люди! Подскажите дураку... Проблема такая: Есть на форе кнопка, по нажатию которй открывается другая форма, идет запрос к БД. Записи возвращаются в DataSet в таблицу Apply. (при запросе берется из формы ID и подставляется в запрос) После этого заполняются контролы на форме. Таки вот. В первый раз все отрабатывает нормально. Но, когда закрываем эту форму с результатами, переходим на другую запись, нажимаем эту же кнопку, то никаких рез-ов нет. ДатаСет заполняется, проверял... а почему так? ВОт код: Dim Query As String Appl = New Apply Query = "select * from Applied_vw where comp_id = " & Label1.Text Dim f1 As Form1 = Me.ParentForm If f1.Data_comp1.Tables.Contains("Apply") Then f1.Data_comp1.Tables("Apply").Clear() End If Dim t As DataTable For Each t In f1.Data_comp1.Tables MsgBox(t.TableName & "Rows.Count = " & t.Rows.Count.ToString()) Next Dim Adp As New SqlDataAdapter(Query, Conn) Adp.Fill(f1.Data_comp1, "Apply") Dim pRow As DataRow Appl.MdiParent = Me.ParentForm Appl.WindowState = FormWindowState.Maximized Appl.Show() Appl.Location = New Point(0, 0) Appl.Label1.DataBindings.Add(New Binding("Text", f1.Data_comp1, "apply.comp_name")) Appl.DateTimePicker1.DataBindings.Add(New Binding("Value", f1.Data_comp1, "apply.date_applied")) Appl.cmbContact.DataBindings.Add(New Binding("Text", f1.Data_comp1, "apply.person_name")) Appl.cmbCV.DataBindings.Add(New Binding("Text", f1.Data_comp1, "apply.cv_type")) Appl.txtNotes.DataBindings.Add(New Binding("Text", f1.Data_comp1, "apply.notes")) Appl.CheckBox1.DataBindings.Add(New Binding("checked", f1.Data_comp1, "apply.answer")) Appl.txtAnswer.DataBindings.Add(New Binding("Text", f1.Data_comp1, "apply.result")) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2005, 11:47 |
|
||
|
Повторное заполнение DataSet
|
|||
|---|---|---|---|
|
#18+
у тебя никаких exception'ов не возникает при выполнении этой части программы ? try-catch-finally используешь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2005, 11:57 |
|
||
|
Повторное заполнение DataSet
|
|||
|---|---|---|---|
|
#18+
Использую при заполении Try. Ничего. Там в ДатаСете уже есть одна таблица Company, но вряд ли это связано как-то. Может как-то биндить надо по-другому? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2005, 12:01 |
|
||
|
Повторное заполнение DataSet
|
|||
|---|---|---|---|
|
#18+
как предположение, попробуй выставить свой контекст для mdi-child ? Appl = New Apply Appl.BindingContext = New BindingContext() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2005, 12:23 |
|
||
|
Повторное заполнение DataSet
|
|||
|---|---|---|---|
|
#18+
Блин, помогло.... А в чем прикол-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2005, 12:26 |
|
||
|
Повторное заполнение DataSet
|
|||
|---|---|---|---|
|
#18+
есть подозрение, что BindingManagerBase.Current после DataTable.Clear улетает в непотребное состояние и не возвращается оттуда даже после DataAdapter.Fill. если есть возможность - проверь это. т.е. убери создание нового контекста, а перед добвлением binding'ов к контролам поставь: Appl.BindingContext[f1.Data_comp1, "Apply"].Position = 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2005, 12:44 |
|
||
|
Повторное заполнение DataSet
|
|||
|---|---|---|---|
|
#18+
Знаешь - помогло... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2005, 12:49 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=33049355&tid=1353752]: |
0ms |
get settings: |
7ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
41ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 280ms |
| total: | 384ms |

| 0 / 0 |
