sommy Skrevet 15. april 2009 Del Skrevet 15. april 2009 eg har en avansert xcel formel som skal portes over til en c# app =G4+(G4*(0,25-(0,05*C17)))+(G4*F22) og eg har provdt forskejlige varianter men får bare feilmeldinger som går på "* cannot be applied to operands" får denne meldingen på denne koden Error 1 Operator '*' cannot be applied to operands of type 'int' and 'System.Windows.Forms.TextBox' { object a = 0.25; object b = 0.05; int sum = textBox1 + (textBox1 * (label3 - ((int)a * textBox2)) + (textBox1 * label2)); label1.Text = sum.ToString(); } og denne meldingen på denne Error 1 Operator '*' cannot be applied to operands of type 'decimal' and 'double' decimal sum = decimal.Parse(textBox1.Text.Trim()) + ((decimal.Parse(textBox1.Text.Trim()) * 0.25 - ("0.5" + (int.Parse((textBox2.Text.Trim()))))); Lenke til kommentar
GeirGrusom Skrevet 15. april 2009 Del Skrevet 15. april 2009 Feilen er akkurat det som står i feilmeldingen. Decimal har ingen operator * definert for decimal og double, bare for double * double eller decimal * decimal. For å lage en decimal fra double eller float, bruk new decimal(min_double) For eksempel decimal.Parse(textBox1.Text.Trim()) * new decimal(0.25) Lenke til kommentar
sommy Skrevet 16. april 2009 Forfatter Del Skrevet 16. april 2009 (endret) Feilen er akkurat det som står i feilmeldingen.Decimal har ingen operator * definert for decimal og double, bare for double * double eller decimal * decimal. For å lage en decimal fra double eller float, bruk new decimal(min_double) For eksempel decimal.Parse(textBox1.Text.Trim()) * new decimal(0.25) kjempe bra, det fungerer, men hvordan overfører eg dette til en lable og textbox? decimal sum = decimal.Parse(textBox1.Text.Trim()) + ((decimal.Parse(textBox1.Text.Trim()) * new decimal(0.24) - new decimal(0.5) + (int.Parse((textBox2.Text.Trim()))))) + (label2 * int.Parse(textBox1.Text.Trim())); nå får eg feil på (label2 * int.Parse(textBox1.Text.Trim())); Error 1 Operator '*' cannot be applied to operands of type 'System.Windows.Forms.Label' and 'int' Endret 16. april 2009 av sommy Lenke til kommentar
GeirGrusom Skrevet 16. april 2009 Del Skrevet 16. april 2009 Feilmeldingen forklarer hva du gjør feil ganske godt synes jeg da. Når du skrive label2, så er det av datatypen Label, denne kan selvsagt ikke multipliseres med et integer. Det du skriver er ikke det samme som det du mener. Du er interessert i Label sin Text egenskap, og den må du parse til et integer. Bytt ut der du har skrevet label2 i koden med int.Parse(label2.Text) Lenke til kommentar
sommy Skrevet 16. april 2009 Forfatter Del Skrevet 16. april 2009 oki flott takker så mye for forklaringen Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå