IntializeComponent продолжает перезаписываться
У меня есть некоторые условия в моем InitializeComponent, которые влияют на макет на основе некоторых переменных. К сожалению, кажется, что всякий раз, когда я перестраиваю свое приложение, этот код возвращается к своему предыдущему состоянию. Этот код регенерируется на основе интерфейса дизайнера? Есть ли способ предотвратить это?
1 ответ
Да, InitializeComponent
полностью генерируется IDE; даже не пытайтесь возиться с этим.
Если у вас есть условная логика, в которой вы хотите добавить / удалить некоторые элементы управления, сделайте это в конструкторе элемента управления после автоматически сгенерированного вызова InitializeComponent
,
Обратите внимание, что если условный материал будет зависеть от функций, включенных / отключенных во время разработки (например, если кто-то еще использует ваш элемент управления, и вы предоставили свойства, влияющие на поведение этого элемента управления, которое вы намерены установить во время разработки), используйте конструктор не будет работать, так как конструктор уже будет запущен к тому времени, когда пользователь сделает свой выбор из представления конструктора; в этом случае переопределите OnLoad
метод и поставить свою логику там (или сделать некоторые изменения этого, например, обрабатывать Load
само по себе событие - есть много способов снять шкуру с этой кошки).