2016-11-08 12 views
-1

here when I press loginLogin-Formular mit Sammelliste Methoden

and here when I press yes

machten ein ATM-Projekt mit C# und es wurde von meinem Lehrer erforderlich, um diese Aufgabe mit heraus zu vervollständigen einer Datenbank mit so habe ich eine Klasse, die eine enthält Liste, um alle Daten zu speichern, während ein neues Konto erstellt wird, aber das Problem ist, dass ich die Daten für die Anmeldung nicht verwenden kann (ich weiß nicht, wie man das bool coding tut, um festzustellen, ob das Element in der Liste ist)

Hinweis: Bei der Anmeldung sollten Sie Ihren Namen und PIN-Code eingeben, um sich einzuloggen

hier ist mein Kontoform Code erstellen

public partial class NewAccountForm : Form 
{ 
    public NewAccountForm() 
    { 
     InitializeComponent(); 
    } 
    Accounts account1; 


    private void btnCreate_Click(object sender, EventArgs e) 
    { 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 

    } 

    private void button2_Click(object sender, EventArgs e) 
    { 
     Form1 login = new Form1(); 
     this.Hide(); 
     login.Show(); 
    } 

    private void btncreate_Click(object sender, EventArgs e) 
    { 


     int interest = 0; 
     char type = '0'; 
     double amount = 0 ; 
     double balance = 0; 

     switch (cboType.SelectedIndex) 
     { 
      case 0: type = '1'; break; 

      case 1: type = '2'; break; 

     } 
     Saveing account1 = new Saveing(interest, txtName.Text, txtContact.Text, 
      txtpinCode.Text, type, amount,balance); 

     Data.CSaveing.Add(account1); //SList shows because its static if remove static will not appears 
    } 

    private void NewAccountForm_Load(object sender, EventArgs e) 
    { 

    } 
} 

und dies ist mein Login-Formular

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 
    Data Accounts; 
    bool validCode = false; 

    private void Form1_Load(object sender, EventArgs e) 
    { 

    } 

    private void label1_Click(object sender, EventArgs e) 
    { 

    } 

    private void textBox1_TextChanged(object sender, EventArgs e) 
    { 

    } 

    private void button1_Click(object sender, EventArgs e) 
    { 

     Accounts.name = txtname.Text; 
     Accounts.code = txtCode.Text; 

     if (string.IsNullOrWhiteSpace(txtname.Text)) 
     { 
      MessageBox.Show("Please Type your full name"); 
     } 
     if (string.IsNullOrWhiteSpace(txtCode.Text)) 
     { 
      MessageBox.Show("Please Enter a correct account Pin Code"); 
     } 
     else if ((Accounts.name == txtname.Text)) ; 
     else if ((Accounts.code != txtCode.Text)) ; 
     { 
      int i; 
      progressBar1.Maximum = 100; 
      progressBar1.Minimum = 0; 
      progressBar1.Step = 1; 
      timer1.Start(); 

      for (i = 0; i <= 50; i++) 

       progressBar1.Value = i; 

     } 
    } 

    private void button2_Click(object sender, EventArgs e) 
    { 
     NewAccountForm naf = new NewAccountForm(); 
     this.Hide(); 
     naf.Show(); 
    } 

    private void timer1_Tick(object sender, EventArgs e) 
    { 
     progressBar1.PerformStep(); 
     if (progressBar1.Value == 99) 
     { 
      LoginForm login = new LoginForm(); 
      this.Hide(); 
      login.Show(); 
     } 
    } 

    private void label3_Click(object sender, EventArgs e) 
    { 

    } 

    private void label4_Click(object sender, EventArgs e) 
    { 

    } 
} 
+2

was Sie unter „meine ich weiß nicht, wie macht man das bool coding ding? In all dem Code, wo genau haben Sie ein Problem? Was genau versuchen Sie zu tun und wie stecken Sie fest? Welchen Versuch haben Sie unternommen und welchen Fehler sehen Sie? – David

+0

@David Ich denke, dass Ahmed versucht hat, Ihre Fragen zu beantworten. Ahmed, bitte benutze '@', um auf die anderen Benutzer zu verweisen! – meJustAndrew

+0

@AhmedAlnakhi: Ich bin mir nicht sicher, wo die Verwirrung hier ist, aber * Sie * sind die, die ein Problem zu * uns * beschreiben ... – David

Antwort

0

Diese Frage viele notwendige Informationen fehlen. Es ist nicht klar, was Sie tun müssen.

Allerdings, wenn Sie die Daten speichern müssen, aber Sie keine Datenbank verwenden dürfen, können Sie es in eine Textdatei einfügen. Sie könnten sogar die Daten verschlüsseln, um sie "sicherer" zu machen.

Wenn Sie nur die Daten pro Benutzersitzung speichern müssen, spielt es bei der ersten Ausführung der Anwendung keine Rolle, dass die Klasse, die Ihre Benutzer enthält, leer ist. In der Tat macht es die Dinge einfacher, denn beim ersten Start der Anwendung wissen Sie, dass Ihre Benutzerklasse leer sein wird.

Ich schlage vor, dass Sie ein Login-Formular mit einem List<UserClass> usersList haben. Wenn Ihre Benutzer klickt anmelden, prüfen Sie zunächst, ob die Liste alle Einträge enthält:

if(usersList.Any()) { ... } 

Wenn es keine Werte in der Liste ein Formular zeigen, einen neuen Benutzer zu erstellen. Wenn Sie die Werte im Benutzerformular zum Erstellen validiert haben, fügen Sie der Liste eine neue Instanz von UserClass hinzu und zeigen Sie das eingeloggte Formular an, was auch immer das sein mag.

Ich schlage vor, Sie auch eine der vielen einleitenden Tutorials auf .NET und C# lesen, da dies wahrscheinlich nicht der richtige Ort, um solche grundlegenden Fragen zu stellen :)