2016-11-23 5 views
3

У меня есть проблема при выводе формы под названием PrinterForm Это код родительского формы:C# конструктор не отображается, когда форма наследования

public partial class PrinterForm : Form 
{ 
    public PrinterForm() 
    { 
     InitializeComponent(); 
    } 

    private void PrinterForm_Load(object sender, EventArgs e) 
    { 
     LoadSomething(); 
    } 

    private void LoadSomething() 
    { 
     //Return a List<dynamic> of Dapper (query work fine!). The function is already used elsewhere so no problem here 
     var list = new DapperRepository().GetAllOfSomething(); 
    } 
} 

И это код детей составляют:

Когда я пытаюсь получить доступ к FormChildren дизайнеров сообщается об ошибке и не показано. Ошибка, которая, как сообщается, мне следующее:

System.Windows.Forms.Design.IEventHandlerService

Попытка прокомментировать функции LoadSomething может корректно отобразить дизайнер.

В чем проблема?

+0

ли это происходит, когда вы запускаете приложение, или в Visual Studio дизайнера? –

+0

@ krw12572 Дизайнер Visual Studio –

+0

Из вашего кода класса FormChildren кажется, что вы либо получаете доступ к методу InitializeComponent в родительском классе, либо вы создали еще один WindowsForm ('FormChildren') и пытаетесь наследовать' PrinterForm'. Оба варианта кажутся неправильными. Если вы хотите наследовать форму, просто создайте простой класс и наследуйте уже созданный 'PrinterForm'. Затем проверьте, не исчезла ли ваша проблема. –

ответ

1

Я думаю, что проблема в функции LoadSomething, вы должны попробовать поставить условие, чтобы оно не выполнялось, когда вы работаете с дизайнером.

См: Error when opening designer on inherited form

+0

Кажется, что работает. ɐı ןɐʇ ı, p ǝʇuǝpısǝɹd ıɔɔnƃ –

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