Servus Leute,
habe folgendes Problem und zwar, ich möchte nach einen Login auf einer Form 1, dass das die textboxen auf Form 2(main_form) automatisch befüllt werden.
habe zunächst den Inhalt der usernamen ( textbox1 ) in die form zwei kopiert, dieser Name erscheint auch auf der Form 2. Durch den Namen möchte ich eine Select Anweisung starten, damit z.B. textbox_strasse (tb_mainstrasse) automatisch aus einer Tabelle [register] befüllt wird.
Hoffe das Problem ist klar.
bedanke mich voraus für die Bearbeitung
Code;
code auf der Form 1;
form_main form_main = new form_main(tb_loginname.Text);
form_main.ShowDialog();
code auf der Form 2 (form_main);
public form_main(string str_value)
{
InitializeComponent();
tb_loginname.Text = str_value;
}
Code auf der form zwei damit die Textbox automatisch befüllt wird
con.Open(); // con = SQL Connection wurde vorher ralisiert
string sqlquery = ("Select strasse From [register] WHERE name = '" + tb_loginname.Text + "'");
SqlCommand command = new SqlCommand(sqlquery, con);
SqlDataReader sdr = command.ExecuteReader();
tb_mainstrasse.Text = sdr.ToString();
Hallo, ich bin auch nur ein Newbi, aber ich würde das ggf. so lösen:
in der Form1
form1 irgendeinName= new form1();
irgendeinName.loginname = "Maffi1986";
irgendeinName.strasse = "MusterStr. 3";
irgendeinName.ort = "Hamburg";
irgendeinName.ShowDialog();
in der Form2
public partial class form_main : form2
{
...
public string loginname { get; set; }
public string strasse { get; set;}
public string ort { get; set; }
somit hast du die werte dann in einer Variable und kannst Sie dann zuweisen
textbox1.Text=strasse;
ich hoffe ich habe dein Problem richtig verstanden, und konnte dir Helfen.
Viele Grüße
Maffi
Was du machen möchtest, ist Ansatzweise klar.
Was nicht Funktioniert nicht. Es würde helfen Anzugeben, was nicht Funktioniert. So kann man nur Raten.
Meine Vermutung ist, dass du die Straße nicht in der Textbox stehen hast. Sondern den Typ des Objektes vom Reader.
SqlDataReader sdr = command.ExecuteReader();
tb_mainstrasse.Text = sdr.ToString();
Kurz Gegooglet:Das könnte dein Problem lösen:
stackoverflow:Read data from SqlDataReader
(Hab ich jetzt nur grob überflogen)
Grundlegen: [Hinweis] Wie poste ich richtig? (Grade was die Formatierung des Quellcodes angeht.)
[Edit] Danke Th69, hab den Link mal ergänzt. [/Edit]
Sollte man mal gelesen haben:
Hallo erzincan24,
wie Palin schon erwähnt hat, solltest du es den Helfer möglichst leicht machen dir helfen zu können. Dazu gehört es auch dass der Code formatiert wird, genau beschrieben wird was du willst und wo du hängst. Schau dir dazu unbedingt die Grundlagen für erfolgreiches Posten an: [Hinweis] Wie poste ich richtig?
Schau dir weiters [FAQ] Kommunikation von 2 Forms an.
SQL Statements werden auch nicht als String zusammengebaut, sondern [Artikelserie] SQL: Parameter von Befehlen verwendet.
Da ich in deinem Code ein ShowDialog gesehen, möchte ich dir auch als Anregung Warten auf Schließen einer anderen Form [und warum man Dialoge nicht modal machen sollte] zum Lesen geben. Vllt. findest du darin ein paar Gedanken und Ansätze wie es vllt. anders lösbar ist.
mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"
Hi Leute,
danke im voraus für eure Raschen Antworten.
Danke Palin, das ist mein Problem. ( kann dein link nicht öffnen, leider)
Habe mehrere Codes versucht (vergebens 😕)
Nochmals kurz zur verständniss des Programms:
Habe eine Registrierungs Forumlar da werden ( name,Pw,strasse,hausnummer etc ) in einer DB abgelegt in meinem fall nennt sich dei Tabelle [register]
Der Registrierte USER kann sich auf der Form 1 (form_login) anmelden
3.Durch erfolgreiches Anmelden öffnet sich die zweite form (form_main), auf dieser befinden sich mehrer Textboxe(tb) wie Name, Strasse usw.
Der Name des Eingeloggeden User's bekomme ich in die tb_name, durch diesen Namen möchte ich die andere zugehörigen tb automatisch befüllen lassen. z.B:
string sqlquery = ("Select strasse From [register] WHERE name = '" + tb_loginname.Text + "'");
Nach der Zuweisung auf die textbox bleibt sie leer.
hoffe ich kann mich verständlich ausdrücken 😕.
Grüße aus Mainz
Der Link bei Palin fehlte: stackoverflow: Read data from SqlDataReader (dort steht wie man korrekt Daten ausliest)
Hi Leute,
habe nun das Problem selbst gelöst und es funktioniert wie gewollt.
bedanke mich nochmals für die TIPPS und das alles innerhalb von nicht mal 24h ihr seid alle TOP 👍
grüße ausm kalten Mainz
X(