Autor Beitrag
naeschd
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 04.03.10 00:14 
Hallo ich habe ein großes Problem....

Ich mache mein Projekt auf und mein Form (der Entwurf) ist auf einmal leer!!!! Wie wenn ich ein neues Projekt anfangen würde. Der Code usw. ist aber alles noch da und Fehler treten auch keine auf, nur dass ich mein Form keine Inhalte hat...

Habe nichts am Code geändert was dies hätte vorrufen können. Habt ihr eine Idee wie ich das wieder in den Griff bekomme? Wäre euch sehr denkbar!

Matze
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Do 04.03.10 00:52 
Was steht denn in der .designer.cs, ist die auch noch vorhanden?

_________________
>λ=
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 04.03.10 09:28 
Hallo,

hast du vlt. den Constructor geändert? Dort muss bei einer Form die Funktion InitializeComponent aufgerufen werden, ansonsten werden die Controls nicht geladen.

Gruß Daniel
naeschd Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 04.03.10 09:51 
Nein ich habe den Constructor nicht geändert... Hier mal der Constructor... (cs, 44.76 KB)

Hab ziemlich viel drin... Weiß nicht obs weiterhilft. Aber sollte doch eigentlich passen oder?

Moderiert von user profile iconChristian S.: 800 Zeilen Quelltext als Anhang eingefügt
Einloggen, um Attachments anzusehen!
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 04.03.10 09:56 
Das, was du zitiert hast, ist nicht der Konstruktor. Der steht in MyForm.cs und sieht als Minimalversion so aus:
ausblenden C#-Quelltext
1:
2:
3:
4:
public MyForm()
{
   InitializeComponent();
}

Darauf bezog sich Daniel. Jürgen
naeschd Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 04.03.10 09:58 
ok... Hab ihn. So sieht er aus:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
        public Hauptfenster()
        {
            // Nicht optimal, aber zum Testen ok, Thread Problem muss noch gelöst werden!!!
            CheckForIllegalCrossThreadCalls = false;
            // ---------------------------------------------------------------------------
            InitializeComponent();
            InitializeControlValues();
            EnableControls();
            // When data is recieved through the port, call this method
            comport.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);

            //Calibration form definieren
            FensterCal = new frmCalibration();
            FensterCal.Show();
            FensterCal.Visible = false;
        }


Moderiert von user profile iconChristian S.: Code- durch C#-Tags ersetzt
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 04.03.10 10:07 
Das bedeutet, du erzeugst vom Hauptfenster aus ein weiteres Fenster und zeigst das sofort an? Das nehme ich nach der Variablen FensterCal an.

Nimm das mal raus und verlagere es nach Form.Load oder Form.Shown. Der Designer benutzt zum Aufbau genau denselben Code wie du zur Verarbeitung. Es ist denkbar, dass er durch das zweite Fenster völlig durcheinandergebracht wird.

Die anderen Maßnahmen beeinflussen zwar auch die Gestaltung des Formulars, aber das sind vermutlich alles zulässige Verfahren.

Gruß Jürgen

PS. Bezeichner wie Label23 oder PictureBox_123 gehören verboten, siehe .NET Richtlinien für Namen.
naeschd Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 04.03.10 10:10 
Habs rausgenommen (war eigentlich noch ein alter Codeschnippsel)... Leider keine Änderung! Hat ja davor aber auch mit dem Codeschnippsel schon funktioniert...
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 04.03.10 10:53 
Wenn du auf die Methode InitalizeComponent gehst und F12 drückst, kommst du zu deren Implementierung.

Schau mal ob das funktioniert und es dort "gut" aussieht.
naeschd Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 04.03.10 10:57 
Dann komme ich genau dahin was im 4. Post steht... Ob das gut oder schlecht aussieht kann ich leider nicht beurteilen. Dazu bin ich no zu sehr Laie (leider)...
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 04.03.10 11:16 
Okay, das sieht "gut" aus. Dann sind die Bedingungen soweit in Ordnung. Im Designer siehst du die Element noch? Erst zur Ausführung nicht mehr? Korrekt?
naeschd Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 04.03.10 11:19 
Also ich sehe schon im Entwurf (also bei der Registerkarte "Hauptfenster.cs [Entwurf]") nix mehr... Und auch wenn ich das Programm ausführe auch nicht. Das heißt ich kann meine Steuerelemente während des Programmierens (wenn das Programm nicht läuft) nicht sehen! Da sieht die Windowsoberfläche so aus, als währe ein neues Projekt gerade begonnen worden...
Thx für deine Hilfe!
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 04.03.10 11:30 
Kannst du mal probeweise deinen Konstruktor wie folgt reduzieren und schauen ob es dann funktioniert...

ausblenden C#-Quelltext
1:
2:
3:
4:
    public Hauptfenster()
    {
        InitializeComponent();
    }
naeschd Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 04.03.10 11:32 
Muss dich leider enttäuschen... Bleibt alles unverändert... :-(
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 04.03.10 13:09 
Solche Zeilen fehlen:
ausblenden C#-Quelltext
1:
this.Controls.Add(...);					

Erst dadurch werden die ganzen Controls dem Fenster zugeordnet. Das musst du handschriftlich hinzufügen für alle Controls der obersten Ebene (Panels, ToolStrip u.ä.). Ich habe jetzt nicht kontrolliert, ob die entsprechenden Anweisungen für alle Panels usw. vorhanden sind; aber diese fehlen jedenfalls nicht immer.

Wie diese Anweisungen verschwinden können, ist mir freilich schleierhaft. Ich könnte mir allenfalls vorstellen, dass verschiedene Controls aus einem Control in ein anderes verschoben werden sollte und dadurch nicht an der richtigen Stelle landeten.

Gruß Jürgen