2014-06-11 1 views
3

Чтобы загрузить мой ComboBox в начале я использовал метод шахтного LoadDataFromDB() в методе InitializeComponent(), но есть предупреждение говорит:код в методе «InitializeComponent» генерируется дизайнером и не должен быть изменен вручную

код в методе «InitializeComponent» порождается дизайнером и не должны быть изменены вручную

Так , где я могу загрузить мой ComboBox?

ответ

3

Использование конструктора форме в

public Form1() 
{ 
    InitializeComponent(); 
    LoadDataFromDB(); 
} 

Или (sometimes better) Form.Load обработчик событий (он будет добавлен автоматически при двойном щелчке формы в конструкторе):

private void Form1_Load(object sender, EventArgs e) 
{ 
    LoadDataFromDB(); 
} 

Другой вариант перекрывая OnLoad метод формы.

ПРИМЕЧАНИЕ: Вы видите это предупреждение, потому что InitializeComponent генерируется дизайнером, и он будет полностью перегенерирован, когда вы что-то измените в дизайнере (добавьте некоторый элемент управления, переместите или измените размер элемента управления, измените цвет и т. Д.). Таким образом, все ваши изменения в этом методе исчезнут.

+1

+1 студии дизайнера для объяснения причины предупреждения. – Sayse

1

Не нужно его загружать в InitializeComponent. Сразу после этого вы можете позвонить по своему методу LoadDataFormDB().

InitializeComponent(); 
LoadDataFormDB(); 

Вы можете прочитать также, комментарии выше метод, который говорит:

'NOTE: The following procedure is required by the Windows Form Designer 
'It can be modified using the Windows Form Designer. 
'Do not modify it using the code editor. 
3

Непосредственно после InitializeComponent называется, или до тех пор, как его после InitializeComponent().

public FormName() 
{ 
    InitializeComponent(); 
    LoadDataFromDB(); 
} 

Примечание: Вы не можете увидеть эти элементы управления в визуальном зрения

Смежные вопросы