29. september 2005 - 21:32
Der er
31 kommentarer og 1 løsning
Simpelt spørgsmål til TextBox
Hej alle.. Jeg har en double en textbox og en knap. Her er lidt kode: double saldo = 0; private void button1_Click(object sender, System.EventArgs e) { saldo = saldo + textBox2.Text; } Dette virker selvfølgelig ikke da den ikke kan addere en string til en double.
Annonceindlæg fra Computerworld it-jobbank
Mød 3.500+ it-talenter på IT-DAY 2026
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
29. september 2005 - 21:33
#1
nogle der ved hvordan man gør ?
29. september 2005 - 21:35
#2
Du skal konvertere den med klassen Integer
29. september 2005 - 21:36
#3
saldo = saldo + double.Parse(textBox2.Text);
29. september 2005 - 21:37
#4
vigtigt: double.Parse bruger sprog opsætning d.v.s. at sprog dansk så vil den bruge komma og ikke punktum
29. september 2005 - 21:37
#5
saldo = saldo = Convert.ToDouble(textBox2.Text);
29. september 2005 - 21:37
#6
saldo = Convert.ToDouble(textBox2.Text); ved ikke om det virker
29. september 2005 - 21:38
#7
Jeg troede desuden jeg var i Java katagorien.. derfor jeg snakker om Integer... så kommer blot med et bud fordi jeg nu alligevel er havnet her;)
29. september 2005 - 21:38
#8
saldo = saldo + Convert.ToDouble(textBox2.Text); sorry spam!!
29. september 2005 - 21:43
#9
mange tak arne ;) lige inden du lægger et svar...(da der er så mange points) så vil jeg gerne have indsat en listbox hvor hver gang man indsætter penge (knap) kommer beløbet (addsaldo) tiden og dato til at stå i listboxen. og det samme med (subsaldo) bare med minus foran !
29. september 2005 - 21:59
#10
svar --- så skal du vel: fjerne gammel saldo tilføje nyt beløb tilføje ny saldo til din listbox
29. september 2005 - 22:06
#11
ok men det var mere koden at gøre det med jeg var ude efter noget i stil med: TextWriter tr = new StreamWriter("saldo.txt"); tr.WriteLine(listBox1.Items) ??? Og så læse fra fil TextReader tr = new StreamReader("saldo.txt"); listBox.Items = tr.ReadLine() ???
29. september 2005 - 22:08
#12
jeg har fundet ud af at "logge" transaktionerne i en listbox men nu skal de bare gemmes i en txt fil og hentes til listboxen igen (når programmet starter)
29. september 2005 - 22:08
#13
håber du vil svare selvom jeg har accepteret dit svar !
29. september 2005 - 22:09
#14
hvis du læser N linier fra en fil ind i et array med N elementer kan du vel assigne det array til listboxens datasource property ?
29. september 2005 - 22:11
#15
??? jeg er ikke så rutineret en C# programmør så lidt kode ville ikke gøre noget ;)
29. september 2005 - 22:12
#16
giv mig en 20 minutter
29. september 2005 - 22:13
#17
ok PFtak ;)
29. september 2005 - 22:14
#18
lidt kode hvis du kan bruge det ! using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.IO; namespace C5_Very_Light { /// <summary> /// Summary description for Form1. /// </summary> public class Form1 : System.Windows.Forms.Form { private System.Windows.Forms.TextBox textBox1; private System.Windows.Forms.Label label1; private System.Windows.Forms.Button button1; private System.Windows.Forms.Button button2; private System.Windows.Forms.TextBox textBox2; /// <summary> /// Required designer variable. /// </summary> private System.ComponentModel.Container components = null; double saldo = 0; private System.Windows.Forms.Label label2; double addsaldo = 0; private System.Windows.Forms.ListBox listBox1; private System.Windows.Forms.Label label3; double subsaldo = 0; string stringsaldo; public Form1() { // // Required for Windows Form Designer support // InitializeComponent(); // // TODO: Add any constructor code after InitializeComponent call // } /// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.textBox1 = new System.Windows.Forms.TextBox(); this.label1 = new System.Windows.Forms.Label(); this.button1 = new System.Windows.Forms.Button(); this.button2 = new System.Windows.Forms.Button(); this.textBox2 = new System.Windows.Forms.TextBox(); this.label2 = new System.Windows.Forms.Label(); this.listBox1 = new System.Windows.Forms.ListBox(); this.label3 = new System.Windows.Forms.Label(); this.SuspendLayout(); // // textBox1 // this.textBox1.Location = new System.Drawing.Point(504, 384); this.textBox1.Name = "textBox1"; this.textBox1.Size = new System.Drawing.Size(184, 20); this.textBox1.TabIndex = 0; this.textBox1.Text = "- kr."; // // label1 // this.label1.Location = new System.Drawing.Point(504, 368); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(160, 16); this.label1.TabIndex = 1; this.label1.Text = "Saldo"; // // button1 // this.button1.Location = new System.Drawing.Point(8, 56); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(144, 24); this.button1.TabIndex = 2; this.button1.Text = "Indsæt penge"; this.button1.Click += new System.EventHandler(this.button1_Click); // // button2 // this.button2.Location = new System.Drawing.Point(8, 88); this.button2.Name = "button2"; this.button2.Size = new System.Drawing.Size(144, 24); this.button2.TabIndex = 3; this.button2.Text = "Hæv penge"; this.button2.Click += new System.EventHandler(this.button2_Click); // // textBox2 // this.textBox2.Location = new System.Drawing.Point(8, 24); this.textBox2.Name = "textBox2"; this.textBox2.Size = new System.Drawing.Size(144, 20); this.textBox2.TabIndex = 4; this.textBox2.Text = ""; // // label2 // this.label2.Location = new System.Drawing.Point(8, 8); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(88, 16); this.label2.TabIndex = 5; this.label2.Text = "Beløb"; // // listBox1 // this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.listBox1.Location = new System.Drawing.Point(160, 24); this.listBox1.Name = "listBox1"; this.listBox1.Size = new System.Drawing.Size(528, 342); this.listBox1.TabIndex = 6; // // label3 // this.label3.Location = new System.Drawing.Point(160, 8); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(144, 16); this.label3.TabIndex = 7; this.label3.Text = "Konto"; // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(696, 414); this.Controls.Add(this.label3); this.Controls.Add(this.listBox1); this.Controls.Add(this.label2); this.Controls.Add(this.textBox2); this.Controls.Add(this.button2); this.Controls.Add(this.button1); this.Controls.Add(this.label1); this.Controls.Add(this.textBox1); this.Name = "Form1"; this.Text = "C5 Very Light"; this.Closing += new System.ComponentModel.CancelEventHandler(this.Form1_Closing); this.Load += new System.EventHandler(this.Form1_Load); this.ResumeLayout(false); } #endregion /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); } private void Form1_Load(object sender, System.EventArgs e) { try { TextReader tr = new StreamReader("saldo.dat"); stringsaldo = tr.ReadLine(); saldo = Double.Parse( stringsaldo ); tr.Close(); } catch { } textBox1.Text = saldo + " kr."; } private void button1_Click(object sender, System.EventArgs e) { addsaldo = Double.Parse( textBox2.Text ); saldo = saldo + addsaldo; textBox1.Text = saldo + " kr."; listBox1.Items.Add("+ " + addsaldo + " kr."); } private void button2_Click(object sender, System.EventArgs e) { subsaldo = Double.Parse( textBox2.Text ); saldo = saldo - subsaldo; textBox1.Text = saldo + " kr."; listBox1.Items.Add("- " + subsaldo + " kr."); } private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e) { TextWriter tw = new StreamWriter("saldo.dat"); tw.WriteLine(saldo); tw.Close(); } } }
29. september 2005 - 22:16
#19
super simpelt eksempel (med det relevant kode markeret): using System; using System.Collections; using System.IO; using System.Drawing; using System.Windows.Forms; namespace DefaultNamespace { public class MainForm : Form { private ListBox listBox1; public MainForm() { InitializeComponent(); } [STAThread] public static void Main(string[] args) { Application.Run(new MainForm()); } private void InitializeComponent() { listBox1 = new ListBox(); SuspendLayout(); listBox1.Location = new Point(50, 50); listBox1.Size = new Size(150, 300); // start ArrayList al = new ArrayList(); StreamReader sr = new StreamReader(@"C:\data.txt"); string line; while((line = sr.ReadLine()) != null) { al.Add(line); } listBox1.DataSource = al; // slut ClientSize = new Size(250, 400); Controls.Add(listBox1); Text = "Listbox test"; ResumeLayout(false); } } }
29. september 2005 - 22:28
#20
hvad så når man skal læse fra filen og insdætte det i listboxen når programmet starter igen ?
29. september 2005 - 22:30
#21
nej jeg mener skrive !
29. september 2005 - 22:31
#22
mit eksempel viser netop hvordan man læser fra fil til ListBox
29. september 2005 - 22:31
#23
hvad mener du ?
29. september 2005 - 22:35
#24
jeg mener skrive !! skrive til filen data.txt (alt indholdet i listboxen)
29. september 2005 - 22:38
#25
fx inde i form1_closing(...) få den til at skrive alt indholdet i listboxen til data.txt på samme en sådan måde at jeg kan bruge dit "læse fra fil til listbox" eksempel
29. september 2005 - 22:38
#26
du åbner en StreamWriter så itererer du over din ListBox Items property og udskriver hvert item
29. september 2005 - 22:38
#27
..til at hente data igen ! når man starter programmet
29. september 2005 - 22:40
#28
en lille kode måske :D
29. september 2005 - 22:48
#29
10 minutter
29. september 2005 - 22:49
#30
ok
29. september 2005 - 22:53
#31
jeg måtte lige lave lidt om i read også men her er den: using System; using System.Collections; using System.IO; using System.Drawing; using System.Windows.Forms; namespace DefaultNamespace { public class MainForm : Form { private ListBox listBox1; private Button button1; private Button button2; public MainForm() { InitializeComponent(); } [STAThread] public static void Main(string[] args) { Application.Run(new MainForm()); } private void InitializeComponent() { listBox1 = new ListBox(); button1 = new Button(); button2 = new Button(); SuspendLayout(); listBox1.Location = new Point(50, 50); listBox1.Size = new Size(150, 300); StreamReader sr = new StreamReader(@"C:\data.txt"); string line; while((line = sr.ReadLine()) != null) { listBox1.Items.Add(line); } sr.Close(); button1.Location = new Point(50, 450); button1.Size = new Size(50, 25); button1.Text = "Tilføj"; button1.Click += new EventHandler(Button1Click); button2.Location = new Point(150, 450); button2.Size = new Size(50, 25); button2.Text = "Gem"; button2.Click += new EventHandler(Button2Click); ClientSize = new Size(250, 500); Controls.Add(listBox1); Controls.Add(button1); Controls.Add(button2); Text = "Listbox test"; ResumeLayout(false); } private void Button1Click(object sender, EventArgs e) { listBox1.Items.Add("Dette er en tilføjet linie"); } private void Button2Click(object sender, EventArgs e) { StreamWriter sw = new StreamWriter(@"C:\data.txt"); foreach(object item in listBox1.Items) { sw.WriteLine(item); } sw.Close(); } } }
29. september 2005 - 23:13
#32
mange tak arne ;)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.