2009-02-25 5 views
2

J'ai donc un projet existant avec un contrôle onglet personnalisé imbriqué dans des panneaux et des séparateurs, etc.contrôle onglet personnalisé ne pas afficher dans le formulaire Visual Studio Création

Maintenant, je dois ajouter quelque chose à l'une des pages de cet onglet contrôle à travers la vue de conception.

Cependant, lorsque je vois le formulaire en question, le contrôle de tabulation est nulle part (et pas dans le menu déroulant des contrôles actuels sur la page).

Le contrôle de tabulation se trouve dans le code du concepteur et s'affiche lorsque vous exécutez.

Un conseil pour cette question probablement noob?

Edits

D'accord, je devrais probablement avoir mentionné cela, mais je suppose que j'oublié - la forme est une forme héréditaire. Certaines des différences de cette forme de la forme héritée sont présentes, mais pas le contrôle onglet

+0

Est-il même possible d'hériter d'un " conçu "forme et ajouter plus de contrôles à travers le concepteur? – dotjoe

+0

Ouais, eh bien, il semble que de toute façon parce que cela fonctionne maintenant :-) –

Répondre

2

Le contrôle de tabulation est probablement privé dans le formulaire de base. Essayez de définir la propriété Modifier du contrôle de tabulation sur Protected ou Public (à partir du concepteur du formulaire de base).

Si le champ de contrôle est privé, il ne sera pas disponible dans le concepteur des formulaires hérités, mais il apparaîtra toujours au moment de l'exécution.

mise à jour, nouvelle question par l'auteur

Je ne sais pas comment il est arrivé sans que quelqu'un éditer le fichier csproj dans un éditeur de texte. Mais cet exemple montre comment un formulaire doit apparaître dans 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> 

Cet exemple provoque le comportement que vous avez décrit. (DependentUpon-tags supprimés).

<Compile Include="MainForm.cs"> 
    <SubType>Form</SubType> 
</Compile> 
<Compile Include="MainForm.designer.cs"/> 
<EmbeddedResource Include="MainForm.resx"> 
    <SubType>Designer</SubType> 
</EmbeddedResource> 
+0

Merci pour l'entrée - ne pense pas que ce soit particulier problème mais j'apprécie néanmoins l'aide :-) –

+0

Ok merci pour la mise à jour - je vous donne la bounty pour vos efforts :-) –

2

Vérifiez si ce feedback article correspond à votre problème.

+0

Peut-être à un certain degré - je ne peux tout simplement pas voir le contrôle onglet, cependant. Je vais essayer quelques combinaisons de fermeture/reconstruction et voir ce que je peux faire arriver - merci :-) –

+0

Impossible de résoudre le problème :-( –

+0

Oui, cela m'arrive sur VS2005. – dotjoe

0

Avez-vous essayé d'ajouter un onglet avec du contenu? Parfois, le concepteur n'aime pas vous montrer quelque chose qui héberge du contenu lorsqu'il n'y a aucun contenu à héberger.

+0

Le contrôle de tabulation avait plusieurs onglets pleins de contrôles, mais tout est maintenant invisible .. –

0

So ..

je remarquai que la .designer, .resx et sous forme de code de classe ont tous été répertoriés comme des fichiers séparés dans Visual Studio (ne pas se joindre automatiquement).

Je n'ai aucune idée de ce qui a provoqué cela et la suppression du code source + projet n'a pas aidé.

Cependant .. J'ai décidé de faire ce que j'aurais dû faire beaucoup plus tôt: sauvegarder les 3 fichiers séparément, les supprimer tous via l'interface Visual Studio, sauvegarder le projet, déplacer les 3 fichiers et les ajouter comme éléments existants , avant de sauvegarder et de tout reconstruire. Après tout ça tout va bien ...

Si quelqu'un a une bonne idée pourquoi les trois fichiers séparés, je vais attribuer la prime :-) il

Merci aussi pour tous les commentaires ci-dessus :-)

+0

Bon d'entendre que vous avez résolu votre problème. Mise à jour ma réponse avec une description de la façon dont vous pourriez provoquer le comportement que vous avez décrit. Mais je ne sais pas comment cela peut se passer sans éditer le fichier csproj. –

Questions connexes