Problem mit C#-Timer!?

2 Antworten

Liegt doch auf der Hand.

Einfach erklärt erstellst du eine Kopie vom originalen Form1 in variable f1 und schließt die Kopie wieder. Du hast weder Dein Template noch deine eigentliche Form1 die aktuell offen ist angerührt.

Naja, ohne Deinen Code weiter zu kennen, liegt es doch auf der Hand, oder?

Form1 f1 = new Form1();
f1.Close();

Hier erstellst Du ja nur ne neue Form, die Du dann wieder schließen möchtest. Das ist aber eine neue, die sowieso gar nicht angezeigt wird, unf nicht die alte, die Du schließen möchtest. Die alte hast Du irgendwo davor aufgemacht und auf dieser Instanz musst Du auch den "Close"-Befehl aufrufen.

Habs auch schon mit this.Close(); versucht, das hat auch nicht geklappt. Es wurde nämlich keine zweite Form geöffnet

0

C# Methode erfordert Rückgabetyp

Die folgende Zeile gibt mir in meinem Projekt eine Fehlermeldung

public Target (Image img, int points, int interval)

Die Methode muss einen Rückgabetyp besitzen.

im Ganzen sieht die target.cs (die ein Teil eines Projekts ist) so aus:

namespace SchnelleReaktion
{
    class target
    {
        Timer time = new Timer();
        public Image img { get; private set; }
        public int points { get; private set; }
        public PictureBox pb;


    public Target (Image img, int points, int interval)
    {
        this.points = points;
        this.img=img;
        time.interval=interval;
        time.Tick +=new EventHandler(time_Tick);
        time.Start();
    }

void  time_Tick(object sender, EventArgs e)
{

    pb.Image=null;
    time.Stop();


}
}
}

Was ist ein Rückgabetyp im Allgemeinen und in diesem speziellen Fall?

...zur Frage

C# Abbrechen-Button?

Hallo, ich habe ein Problem mit meiner Anwendung. Ich habe eine Form die heißt z.B. Form1 und eine Form2. Beim klick auf den Hinzufügen-Button in Form1 öffnet sich Form2 (dort sollen dann Daten in Textboxen eingegeben). Wenn ich dann auf den Speichern-Button klicke werden diese eingegebenen Daten in eine Datenbank gespeichert und in einem Datagridview in Form1 angezeigt. Das Problem hierbei ist, der Abbrechen-Button in Form2 funktioniert nicht (beim klick auf den Abbrechen-Button soll man wieder zurück zu Form1 kommen). Ich habe eine Datenbank Kontext Klasse "PersonDbContext" in der zwei Methoden sind, einmal zum hinzufügen und einmal entfernen einer Person aus dem grid sowie Datenbank.

DbContext:

public class PersonDbContext : DbContext
	{
		public DbSet<Persons> Person { get; set; }
    public void AddPerson(Persons person)
    {
        Person.Add(person);
        SaveChanges();
        MessageBox.Show(@"Person wurde erfolgreich hinzugefügt.");
    }

    public void RemovePerson(Persons person)
    {
        Person.Attach(person);
        Entry(person).State = EntityState.Deleted;
        SaveChanges();

        MessageBox.Show(@"Person wurde erfolgreich gelöscht.");
    }
}

Form1:

private void buttonHinzufügen_Click(object sender, EventArgs e)
		{
			var dlg = new PersonDialog();
			dlg.ShowDialog();
			var person = dlg.Persons;
        _db.AddPerson(person);
        _db.SaveChanges();
    }

PersonDialog ist die 2. Form die sich dann öffnet (Form2).

Wenn ich auf meinen Abbrechen-Button in meiner 2. Form klicke bekomme ich immer den Fehler das der Wert nicht null sein darf.

Also im DbContext in der AddPerson-Methode heißt es dann der Wert darf nicht null sein (bei Person.Add(person);

public void AddPerson(Persons person)
		{
            //Wert darf nicht null sein.
    		Person.Add(person);
        SaveChanges();
        MessageBox.Show(@"Person wurde erfolgreich hinzugefügt.");
    }

Wenn ich aber eben keine Person hinzufügen will (keine Daten in Form2 eingeben will) ist es null. Ich muss sogesehen eine neue Person hinzufügen und die dann per Löschen-Button in Form1 wieder entfernen weil ich sonst ja die Exception kriege. Also wie bringe ich den Abbrechen-Button in Form2 zum laufen (damit es egal ist ob der Wert null ist bzw halt nichts eingegeben wurde)?

Danke euch. :)

...zur Frage

Rpi gpio von Visual Studio aus steuern?

Ist es möglich von einer Windows C# forms app, gestartet am PC, die Raspberry Pi 3 gpio Pins zu steuern. Also ein Programm was auf dem PC läuft, aber Zugriff auf die gpio Pins hat. Ist das möglich?

...zur Frage

C# Form Size 10px größer als beim Debugging

Hallo,

Ich programmier mit Windows Forms in .Net C#.(&VS12) Hab mir ne kleine Form erstellt, bei der die Size pixelgenau stimmen muss. Hab die Size also richtig angepasst, und beim Debuggen kommt auch das gewünschte Erbgenis. Aber wenn ich die kompilierte exe ausführe, scheint die Height & Widht jeweils um 10px größer zu sein. Das Problem tritt bei allen BorderStyles auf, und nur die größe des ClientRectangle verändert sich, die "Ränder" bleiben gleich groß. Hat jemand ne Idee?

LG

...zur Frage

C# Frage FileDialog

Guten Abend,

ich habe eine Frage zu dem FileDialog.

Ich habe den FileDialog geöffnet, allerdings weiß ich dann nicht mehr weiter. Ich möchte die Datei die aus dem Durchsuchen herausgekommen ist, in ein anderes Verzeichniss Kopieren. Wie sieht der Quelltext für diese Aufgabe aus?

Mein Quelltext:

... 
string PDF; 
private void button1_Click(object sender, EventArgs e)
OpenFileDialog 
OF = new OpenFileDialog();
OF.Title = "Dateien Durchsuchen";
         OF.Multiselect = false;
         OF.Filter = "PDF-Dateien|*.pdf;";
         OF.ShowDialog();

Danke im Vorraus!

MFG

...zur Frage

C++ Windows Forms - Abfrage ob Zahl?

Ich suche schon gefühlt seit 3 Stunden wie ich Abfragen kann ob die Eingabe eine Zahl ist. Das größte Problem ist, dass ich nicht im normalen C++ sondern in einer Windows Forms Anwendung schreibe. Es ist absolutes Neuland für mich, daher bräuchte ich eine kleine Hilfe.

Ich versuche aus den drei Eingaben ein paar Rechnungen zu tätigen. So weit funktioniert es auch, jedoch möchte ich, falls Buchstaben eingegeben wurden, nur eine Fehlermeldung ausspucken und einen Crash des Programms vermeiden.

Paar Ideen?

Der Test soll bei den Variablen von 259-261 stattfinden.

Danke im Voraus!

GR3volution

...zur Frage

Was möchtest Du wissen?