Настраиваемый элемент управления вкладкой не отображается в представлении дизайна формы Visual Studio
Итак, у меня есть существующий проект с настраиваемым элементом управления вкладками, вложенным в панели, разделители и т. Д.
Теперь мне нужно добавить что-то на одну из страниц этой вкладки через представление дизайна.
Однако, когда я просматриваю форму, о которой идет речь, элемента управления вкладкой нигде не видно (и не в раскрывающемся списке текущих элементов управления на странице).
Элемент управления вкладкой находится в коде конструктора и появляется при запуске.
Любой совет по этому, вероятно, нубскому вопросу?
Правки
Хорошо, наверное, мне следовало упомянуть об этом, но, кажется, я забыл - форма является унаследованной формой. Присутствуют некоторые отличия этой формы от унаследованной формы, но нет элемента управления вкладкой.
Ответов (4)4
Элемент управления вкладкой, вероятно, является частным в базовой форме. Попробуйте установить для свойства Modifier элемента управления вкладкой значение Protected или Public (из конструктора базовой формы).
Если поле управления является частным, оно не будет доступно в конструкторе наследующих форм, но все равно будет отображаться во время выполнения.
Обновление, новый вопрос автора
Я не знаю, как это произошло без редактирования файла csproj в текстовом редакторе. Но этот пример показывает, как должно выглядеть включение формы в csproj.
<Compile Include="MainForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="MainForm.designer.cs">
<DependentUpon>MainForm.cs</DependentUpon>
</Compile>
<EmbeddedResource Include="MainForm.resx">
<DependentUpon>MainForm.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
Этот пример вызовет описанное вами поведение. (DependentUpon-теги удалены).
<Compile Include="MainForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="MainForm.designer.cs"/>
<EmbeddedResource Include="MainForm.resx">
<SubType>Designer</SubType>
</EmbeddedResource>
Проверьте, соответствует ли эта статья с отзывами вашей проблеме.
Так..
Я заметил, что .designer, .resx и код класса формы были перечислены как отдельные файлы в Visual Studio (не присоединяясь автоматически).
Я понятия не имею, что вызвало это, и возврат исходного кода + проекта не помог.
Однако ... я решил сделать то, что должен был сделать намного раньше: сохранить 3 файла отдельно, удалить их все через интерфейс Visual Studio, сохранить проект, переместить 3 файла назад и добавить их как существующие элементы перед сохранением и перестраиваем все. После всего этого снова все в порядке ...
Если у кого-то есть хорошая идея, почему три файла разделены, я награжу там награду :-)
Также спасибо за все отзывы выше :-)