Entwickler-Ecke

Programmierwerkzeuge - Neue Partial Class dem Formular "unterordnen"


Christian S. - Di 20.12.05 19:58
Titel: Neue Partial Class dem Formular "unterordnen"
Hallo!

Seit VS2005 bzw. der Express-Varianten davon wird der Code des Formdesigners für ein Formular in eine Partial Class ausgelagert, welche im Solution Explorer dem Formular untergeordnet angezeigt wird. (Wer's hat weiß, was ich meine ;-)).

Nun soll mein Formular ein ziemlich großes Interface implementieren und die Implementation stört mich irgendwie in der "normalen" Datei. Also möchte ich einen weiteren Teil der Klasse in eine neue Datei auslagern. Ist auch kein Problem, wird anstandslos kompiliert.

Nur leider wird die neue Partial Class nicht dem Formular untergeordnet angezeigt, sondern erscheint als neues (leeres) Formular. Wie kann ich erreichen, dass auch dieser Teil der Formular-Klasse nicht als eigenständiges Formular, sondern als Teil des bestehenden Formulars angezeigt wird?

Oder kürzer: Ich will, dass meine neue Datei mit Namen "mainform.Interface.cs" sich genauso verhält wie die Datei "mainform.Designer.cs".

Grüße
Christian


Robert_G - Di 20.12.05 22:57
Titel: Re: Neue Partial Class dem Formular "unterordnen"
user profile iconChristian S. hat folgendes geschrieben:
Nun soll mein Formular ein ziemlich großes Interface implementieren und die Implementation stört mich irgendwie in der "normalen" Datei. Also möchte ich einen weiteren Teil der Klasse in eine neue Datei auslagern. Ist auch kein Problem, wird anstandslos kompiliert.
Mache ich auch immer so um Spielchen wie IComponent oder INotifyPropertyChange, etc implementieren.

C#-Quelltext
1:
2:
3:
4:
public partial class Miep 
{}
public partial class Miep : IComponent
{}

sehr nett das Ganze :)

Zitat:
Nur leider wird die neue Partial Class nicht dem Formular untergeordnet angezeigt, sondern erscheint als neues (leeres) Formular. Wie kann ich erreichen, dass auch dieser Teil der Formular-Klasse nicht als eigenständiges Formular, sondern als Teil des bestehenden Formulars angezeigt wird?
Hmm.. das macht mein VS von alleine...
Das geht auch zu Fuss, wenn du die Projektdatei editierst und deine Datei in Abhängigkeit zur Hauptdatei machst.


Christian S. - Di 20.12.05 23:03
Titel: Re: Neue Partial Class dem Formular "unterordnen"
user profile iconRobert_G hat folgendes geschrieben:
Hmm.. das macht mein VS von alleine...
Wie gehst Du beim Erstellen des neuen "Teils" vor?

user profile iconRobert_G hat folgendes geschrieben:
Das geht auch zu Fuss, wenn du die Projektdatei editierst und deine Datei in Abhängigkeit zur Hauptdatei machst.
Okay, das geht. Wäre trotzdem gut zu wissen, wie man's bequem macht. :-)

//edit: Für alle, die das Problem auch haben, hier eine kurze Anleitung:

Die "eigentliche" Form-Datei heisse mainform.cs, die Datei mit dem neuen Teil heisse mainform.Interface.cs. Dann öffnet man die entsprechende .csproj-Datei des Projektes mit einem beliebigen Editor. Bei obigen Dateinamen sucht man dann nach dem Tag

Quelltext
1:
2:
3:
<Compile Include="mainform.Interface.cs">
...
</Compile>

In diesen Tag trägt man ein:

Quelltext
1:
2:
3:
4:
<Compile Include="mainform.Interface.cs">
  <DependentUpon>mainform.cs</DependentUpon>
...
</Compile>

Fertig!