c # - Kopier fra tidligere knap

Indlæg af Hanne Mølgaard Plasc

Problem



Hej jeg har et grundlæggende spørgsmål relateret til C Sharp.


Jeg har et Windows-program med nogle tekstfelter, dropwowns og radio knapper. Nu brugeren udfylder oplysninger i disse felter og gemmer informationen, som er gemt i backend db. Når denne opgave er færdig, nulstiller jeg alle felter.


Nu, hvad jeg vil have, er, når brugeren skal gemme oplysninger til næste gang, skal der være en knap som 'Kopier fra tidligere', når brugeren klikker på det, skal oplysningerne i boksen kopieres fra tidligere opgave, i stedet for at brugeren har at udfylde detaljer igen.


Jeg vil gerne vide, hvad der er den bedste metode til at gennemføre dette i C Sharp. Jeg tænkte på at bruge ordbog i C Sharp.
Synes godt om


Dictionary<string, string> d = new Dictionary<string, string>();
d.Add("txtKeyToSucess", "Pray to One God Alone");
d.Add("txtAdvise", "Dont associate any partners with God");
d.Add("txtResult", "You will be judged for your actions");


if (d.ContainsKey("txtKeyToSucess"))
    {
        String v = d["txtKeyToSucess"];
        txtKeyToSucess.text = v;
    }


Stadig ikke sikker. Kan du med fordel rådgive, hvordan du gør dette med bedst mulig tilgang. Anbefalet del af kode, hvis det er muligt.


Tak.

Bedste reference


Hvorfor gemmer du ikke en henvisning til felterne i databasen? Så når du gemmer den, skal du beholde ID'et til dataene, og så kan kopieringsknappen bare spørge databasen, udfylde felterne, og du er 'god'.

Andre referencer 1


Da du har et velkendt sæt af felter, kan du bare oprette en klasse til dette:


public class Settings
{
   public string KeyToSucces {get;set;}
   public string Advise {get;set;}
   public string Result {get;set;}
}


Nu kan du bare kopiere indstillingerne fra din Settings forekomst. Generelt bør du ikke blande præsentationen (dvs. txtKeyToSucess) med din model (Settings i dette tilfælde), hvis det ikke er nødvendigt.