Form aktualisiert nicht / Visual Studio

Discussion in 'Allgemein' started by DampfLocke, 29 Apr 2017.

Advertisement:

  1. DampfLocke

    DampfLocke Donator

    Joined:
    18 Jun 2015
    Messages:
    339
    Likes Received:
    117
    Hallo zusammen :smile:

    Arbeite momentan bisschen im Visual Studio, jetzt habe ich das Problem wenn ich meine Form ändere z.B einen Button oder Textbox verschiebe und den Code veränder, dass die Form sich nicht auf den neusten Stand aktualisiert wenn ich den Prozess Starte.

    Hoffe das ist verständlich :grin: Bin noch ziemlich neu in dem Bereich
     

    Advertisement:

  2. frechdax

    frechdax Donator

    Joined:
    30 Jul 2014
    Messages:
    480
    Likes Received:
    620
    Haste was im designer code gemacht?

    + wäre nice zu wissen um welche sprache es sich überhaupt handelt.
     

    Advertisement:

  3. ReactiioN

    ReactiioN real Advanced Moderator

    Joined:
    7 Jan 2011
    Messages:
    4,308
    Likes Received:
    6,354
    ?!?!?
    [​IMG]

    Kann also nur VB oder C# sein und wird wohl eher VB sein?
     
    lion likes this.
  4. DampfLocke

    DampfLocke Donator

    Joined:
    18 Jun 2015
    Messages:
    339
    Likes Received:
    117
    Sorry :grin: ne nichts im Designer Code gemacht

    Ist VB
     
  5. zoVk

    zoVk Donator

    Joined:
    18 Feb 2015
    Messages:
    281
    Likes Received:
    58
    Hmm, bin mir nicht sicher ob dir das jetzt so spät noch weiterhilft, vielleicht aber für andere die das lesen / finden und die Hilfe brauchen.

    Ganz genau verstehe ich dein Problem nicht, allerdings vermute ich mal dass du per Knopfdruck deine Textbox verschiebst und sobald du das Programm neustartest die Textbox wieder im Ursprungszustand ist, seh ich das richtig? ^^

    Falls ja gibst du ja an wie weit bzw wohin sie sich bewegen soll bei dem Knopfdruck.

    Wenn du nun möchtest dass genau diese Position gespeichert wird kommt es nun darauf an ob es sofort gespeichert werden soll (Timer) oder ob das egal ist wann es gespeichert wird hauptsache es ist beim nächsten Restart wieder da wo du es zuletzt hattest (Form Closing)

    Zuerstmal der Timer: Den solltest du so einstellen dass er dir passt, allerdings nicht so dass er praktisch dauerspammt, also den Timeintervall auf 3000 (o.ä.) setzen und in den Code des Timers ermittelst du nun die Position von Textbox1 und speicherst die Position über My.Settings

    Bei Form Closing genau das gleiche allerdings schreibst du es da nun in das Event "Form Closing", ermittelst also dort wieder die Position und speicherst das wieder über die My.Settings

    Beide Methoden würden ebenfalls funktionieren falls du die Textbox per Maus verschieben möchtest. Hierbei ist es egal ob der Verschiebungsprozess per Knopfdruck (Code) oder per Mausziehen stattfindet beim Speichern liest du ja sowieso die letzte Position aus welche dann gespeichert wird.

    Hoffe konnte dir bzw den jenigen die ein ähnliches Problem haben weiterhelfen auch wenn es etwas spät ist hihi
     
  6. ShynoX

    ShynoX Donator

    Joined:
    13 Jan 2014
    Messages:
    605
    Likes Received:
    545
    Timer != Sofort

    Die Position wird doch per Knopfdruck angepasst. Warum nicht einfach in das Button.clicked Event?!
     
  7. zoVk

    zoVk Donator

    Joined:
    18 Feb 2015
    Messages:
    281
    Likes Received:
    58
    Geht natürlich auch, habe hier aber den Timer gewählt da ich nicht weis ob er das ganze auf Reihenfolge machen möchte. Sprich Button1 drücken, Textbox wandert 50 pixel weiter nach rechts, Button1 erneut drücken, Textbox wandert erneut 50 Pixel von der letztgespeicherten Position nach rechts usw. Deshalb der Timer damit es zwischengespeichert wird.

    Finde die Lösung so einfacher, ist einerseits übersichtlicher und es hängt nicht vom Button ab ob man ihn drückt sondern es geschieht eher passiv
     
  8. ShynoX

    ShynoX Donator

    Joined:
    13 Jan 2014
    Messages:
    605
    Likes Received:
    545
    PSEUDO
    Code:
    function button1Clicked() {
    .......
    ... ..
    .......
          if textbox.position.x + 50 < Form.width
                textbox.position.x += 50
                mySettings.TextboxPos += 50
    }
    
    3 Zeilen und du bist durch. Einfacher? Definitiv diese. Schöner? Definitiv diese. Warum passiv wenn aktiv auch geht und auf das selbe Resultat hinausläuft + Weniger Performance frisst (ja n 3 Sekunden Timer ist jetzt nicht das Leistungshungrigste, aber dennoch)

    Außerdem, was ist wenn er den Button clicked, die Textbox sich verschiebt und er instant daraufhin das Projekt schließt? Das hast du im Worst Case noch die Zeit die du warten musst, damit der Timer mal triggered und das was eigentlich geschehen soll, geschieht nicht.
     
    #8 ShynoX, 8 Feb 2018
    Last edited: 8 Feb 2018
  9. zoVk

    zoVk Donator

    Joined:
    18 Feb 2015
    Messages:
    281
    Likes Received:
    58
    Stimmt, an den Worst Case habe ich jetzt nicht gedacht ^.^ Aber klar so wie du aufgezeigt hast ist da dann wohl die bessere Lösung, wollte mit dem Timer wie anfangs geschrieben eigentlich nur 2 Beispiele nennen, den Rest oder gar besser hätte er ja von selbst machen können :grin:
     
  10. yaavn

    yaavn Member

    Joined:
    14 Jun 2017
    Messages:
    59
    Likes Received:
    50
    Ich hab manchmal, dass sich die Form nicht direkt aktualisiert. Dann wähle ich kurz einen anderen Tab aus, z.B. den des Designers und wechsel dann wieder auf den der Form zurück dann passt alles :smile:
    Wenn das nicht hilft kannste mal probieren das Projekt vor dem Ausführen abzuspeichern
     
  11. Logxn

    Logxn Honorable

    Joined:
    22 Jul 2016
    Messages:
    1,117
    Likes Received:
    1,231