Προς το περιεχόμενο

Reload της ίδιας αρχικής φόρμας


thanosaek

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα σε όλους....

 

Εχω φτιάξει μια κρεμμάλα σε Visual Studio σε Form Application...Θέλω ένα κουμπί προκειμένου να φέρνω την Form στην αρχική της κατάσταση δλδ στην κατάσταση που είναι όταν ξεκινάει....Κάτι σαν Reload.....

 

Kαμία ιδέα....??????

Δημοσ.

θα κανεις ενα Control το οποιο θα κανεις 'Reload'

ή μια θεδος η οποια θα "σεταρει" της επειλογες σπου ετσι οπως θελεις.

ειναι αοριστο αυτο που λες... παντος το πρωτο ειναι καλιτερη ληση yo

 

---

Αν επιμενεις

>
private void relode_Click(...)
{
Program.Main("oti nane");
this.Dispose();ή this.Close();

}

Δημοσ.

Αυτό που λέω είναι ότι θέλω να γίνονται όλες οι διαδικασίες απο την αρχή....Η αρχικοποιήσης....Τα μεγέθη και τα περιεχόμενα τον label και των picture κ.τ.λ.....

Αν εννοείς να τα κάνω όλα αυτό χειροκίνητα είναι πολύ δύσκολο.....Απλά έλεγα αν μπορώ να αρχικοποιώ την form....Σαν να κλείνω το πρόγραμμα και να το ξανανοίγω....

Αυτό θέλω....

 

Οσο για το Program.Main() δε το κατάλαβα....Η Main δεν υπάρχει σα συνάρτηση...

Δημοσ.

Αυτο με το Main(string[] a) στην ουσια κανει restart.... εχει .net2 ετσι δεν ειναι? στο project εχεις μια κλαση Program η οποια εχει μια σναρτηση Main(...) και μεσα εχει ενα Application.Run(new ins()); τεσπα

κανε ενα κοτρολ

δες εδω ενα παραδιγμα

 

> public class win : Form
   {
       private class uc : UserControl
       {
           public uc()
           {
               this.Controls.Add(new CheckBox
               {
                   Name = "test1",
                   Text = "test1",
                   Checked = true,
                   Location = new Point(10, 10)
               }
               );
               this.Controls.Add(new CheckBox
               {
                   Name = "test2",
                   Text = "test2",
                   Checked = false,
                   Location = new Point(10, 30)
               });
           }
       }
       private Button btnReset;
       public win()
       {
           btnReset = new Button
           {
               Text = "Reset",
               Location = new Point(10, 10)
           };
           this.Controls.AddRange(new Control[] 
           {
               new uc {Location=new Point(0,40) },
               btnReset
           }
           );
           btnReset.Click += delegate
           {
               this.Controls.Clear();
               this.Controls.AddRange(new Control[] 
           {
               new uc {Location=new Point(0,40) },
               btnReset
           }
           );
           };
       }
       public static void ShowThisWin()
       {
           var v = new win();
           v.ShowDialog();
       }
   }

 

Δοκιμασε το να δεις τι ενοω

Για να τρεξεος το παραθυρο, απλα βαλε win.ShowThisWin();

Δημοσ.

Δε κατάφερα να τρέξω το προγραμμά σου αλλά χρησιμοποίησα την εντολή

public static void ShowThisWin()

{

var v = new win();

v.ShowDialog();

}

Με αυτό ανοίγει κανονικά ένα καινούργιο παράθυρο όπως ακριβώς το θέλω....Αλλά δε μπορώ να κλείσω το από πίσω παράθυρο γιατί είναι η βασική form και όταν κάνω Close() κλείνουν και τα δύο....Μπορώ να το αλλάξω αυτό....???

 

Σκέφτικα κάτι άλλο.....

Θα κρύψω την αρχική Form...Έτσι θα κάνω

var v = new Form1();

this.Hide();

v.Show();

 

Όταν θέλω να το κλείσω θα κλείνω την αρχική Φόρμα....Αυτό που θέλω να σε ρωτήσω είναι αν ξέρεις τι πρέπει να γράψω πριν το Close()....Δλδ αν θέλω να κλείσω την τελευταία φόρμα πατάω v.Close().....Για την αρχική τι βάζω....???

Δημοσ.

καντω με κοντρολ σου λεω...

για να τρεξεις αυτο που ποσταρα θελεις

νετ3.5

τελος για να το δοκιμασεις

new porject -> consola application

και στο main

βαζεις απλος

win.ShowThisWin();

>
   static class Program
   {
    
       static void Main()
       {
          win.ShowThisWin();
       }
   }
}

Δημοσ.

Κατάλαβα....

 

Απλά δε γνωρίζω από Controls και πρέπει να τα κοιτάξω λίγο....Επειδή πρέπει να την δώσω αύριο την εργασία δε προλαβένω...Έτσι θα κάνω το φνωστό κόλπο Application.Exit().....

 

Σε ευχαριστώ πολύ πάντως....

CU

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...