none
Bekomme keine Stringausgabe RRS feed

  • Allgemeine Diskussion

  • Hallo,

    iwie bekomme ich keine ausgabe im datagridview hin :/

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    namespace Zinsberechnung_mit_Forms
    {
        public partial class Form1 : Form
        {
            double Kap = 0;
            double zin = 0;
            double kapital = 0;
            double zinssatz = 0;
            double zinsen = 0;
            double zwischenergebnis = 0;
            double jahr = 0;
            double kapital1 = 0;
            double tilgung = 0;
            double monat = 0;
            double rate = 0;
            
            public Form1()
            {
                InitializeComponent();
                this.Text = "Darlehnsrechner";
            }
                    
            private void button1_Click(object sender, EventArgs e)
            {
                kapital = Convert.ToDouble(textBox1.Text);
                jahr = Convert.ToDouble(textBox2.Text);
                zinssatz = Convert.ToDouble(textBox3.Text);
                tilgung = Convert.ToDouble(textBox4.Text);
                kapital1 = kapital;
                //if ((radioButton1.Checked == false) && (radioButton2.Checked == false)) MessageBox.Show("Bitte eine Darlehnsart Auswaelen!");
                
                if (radioButton1.Checked == true)
                {
                    for (int i1 = 1; i1 <= jahr; i1++)
                    {
                        for (int i = 1; i <= 12; i++)
                        {
                            if ((kapital != kapital1) && (i == 1)) kapital = kapital + tilgung;
                            if (i >= 2) kapital = kapital - tilgung;
                            zwischenergebnis = kapital * zinssatz / (100 * 12);
                            
                            if (i1 == 1) monat = i;
                            if (i1 == 2) monat = i + 12;
                            if (i1 > 2) monat = i + (12 * i1) - 12;
                            
                            rate = zinsen + tilgung;
                            zinsen = 0;
                            tilgung = tilgung - zinsen;
                            this.Controls.Add(DataGridView);
                            DataGridView.ColumnCount = 6;
                            DataGridView.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
                            DataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
                            DataGridView.MultiSelect = false;
                            
                            string[] row0 = { monat.ToString(), kapital1.ToString(), zwischenergebnis.ToString(), tilgung.ToString(), rate.ToString(), kapital.ToString() };
                            DataGridView.Rows.Add(row0);
                            
                        }
                        kapital = kapital + zinsen;
                        Kap = Convert.ToInt32(kapital * 100);
                        kapital = (int)Kap / 100;
                        zin = Convert.ToInt32(zinsen * 100);
                        zinsen = (int)zin / 100;
                    }
                }      
                
                if (radioButton2.Checked == true)
                {
                    for (int i1 = 1; i1 <= jahr; i1++)
                    {
                        for (int i = 1; i <= 12; i++)
                        {
                            if ((kapital != kapital1) && (i == 1)) kapital = kapital - tilgung;
                            if (i >= 2) kapital = kapital - tilgung;
                            zwischenergebnis = kapital * zinssatz / (100 * 12);
                            if (i1 == 1) monat = i;
                            if (i1 == 2) monat = i + 12;
                            if (i1 > 2) monat = i + (12 * i1) - 12;
                            
                            rate = zinsen + tilgung;
                            zinsen = 0;
                            this.Controls.Add(DataGridView);
                            DataGridView.ColumnCount = 6;
                            DataGridView.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
                            DataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
                            DataGridView.MultiSelect = false;
                            
                            string[] row0 = { monat.ToString(), kapital1.ToString(), zwischenergebnis.ToString(), tilgung.ToString(), rate.ToString(), kapital.ToString() };
                            DataGridView.Rows.Add(row0);
                        }
                        kapital = kapital + zinsen;
                        Kap = Convert.ToInt32(kapital * 100);
                        kapital = (int)Kap / 100;
                        zin = Convert.ToInt32(zinsen * 100);
                        zinsen = (int)zin / 100;
                    }
                }
                
            }
        }
    }
        
        
       
            
        
        
    Gruß Floland
    • Typ geändert Ionut DumaModerator Montag, 18. März 2013 15:00 Keine Ruckmeldung des Fragenstellender
    Montag, 4. März 2013 20:09

Alle Antworten

  • Hi,

    so ganz ohne Datenquelle würde ich das nicht machen. Ob man bei WinForms für das DataGridView zwingend eine DataSource benötigt, weiß ich nicht. Aber Sinn macht es allemal.

    Anstatt also dem DataGridView selbst die Zeilen hinzuzufügen, machst Du das sinnvollerweise in einer DataTable oder auch einer List<EigeneKlasse> bzw. BindingList<T>, der Du dann die einzelnen Zeilen als Objekte gibst. Die DataTable oder List/BindingList kannst Du dem DataGridView dann als DataSource zuweisen.

      http://msdn.microsoft.com/de-de/library/fbk67b6z.aspx

      http://tech.pro/tutorial/776/csharp-tutorial-binding-a-datagridview-to-a-collection


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Montag, 4. März 2013 21:41
    Moderator
  • Hallo Floland,

    Wenn Dir die Antwort von Stefan geholfen hat dann bitte markiere diese als Antwort.

    Danke und Gruss,

    Ionut

    Donnerstag, 14. März 2013 16:17
    Moderator
  • ****************************************************************************************************************
    Dieser Thread wurde mangels weiterer Beteiligung des Fragestellenden ohne bestätigte Lösung abgeschlossen.
    Neue Rückfragen oder Ergänzungen zu diesem Thread bleiben weiterhin möglich.
    ****************************************************************************************************************
    Montag, 18. März 2013 15:00
    Moderator