Laden...

Forenbeiträge von Fracoon Ingesamt 85 Beiträge

09.02.2008 - 13:20 Uhr

Hallo Herbivore,

hast recht. habs grade getestet. Danke für deinen Hinweis. Irgendwann hätt ich mir bestimmt nen WOlf gesucht weil strings dabei sind wo IRGENDWO en Komma ist.

Ist Regex eigentlich Performant?

Ich denke doch mal performanter wie wenn ich den string nach dem Komma durchsuche und von da an nach Rechts und Links alle Zahlen such?!?!

09.02.2008 - 03:57 Uhr

Danke... hat mir geholfen...

für alle die irgendwann mal das gleiche Problem haben :


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace ConsoleApplication1
{
    class Program
    {
        
        public static Regex regex = new Regex("\\d*,\\d*",RegexOptions.CultureInvariant| RegexOptions.Compiled );
        static void Main(string[] args)
        {
            string InputText = "sdgsdfdsg1234,235324asdfaf";
            Match ma = regex.Match(InputText);
            Console.WriteLine(ma);
            Console.ReadLine();

        }
    }
}

08.02.2008 - 15:47 Uhr

Wenn ich

collection = expression.Matches(dataToRecieve);

mache kann ich im Debuger (in collection) die gesuchte Zahl finden... Jedoch in den non-public members..

08.02.2008 - 15:45 Uhr

Hi@all....

bin am verzweifeln... ist doch bestimmt ganz einfach.

ich habe einen String der eine Kommazahl enthält. Drumherum stehen ein haufen beliebiger Zeichen.

z.B. so :

sfdbgfilsdk,jgvsdio345.bgsod128,63456sgdf.gasdf,gfasd

Jetzt hätte ich gerne einen string der

128,63456

beinhaltet.

habe mit Expresso rumgespielt und mir darin einen Regex Ausdruck zusammengebastelt mit dem ich die Zahl finden kann:


\d*,\d*

Wie kann ich mir von einem Regex in C#


Regex expression = new Regex(@"\d*,\d*");

die Nummer in einem String zurückliefern lassen??!?!

Geht dass so überhaupt? Bin ich auf dem Holzweg?

06.02.2008 - 16:20 Uhr

ich machs so


INSERT INTO customize.bereiche
SELECT 6,'XXX',1,2,''
  WHERE NOT EXISTS 
  (SELECT id FROM customize.bereiche
             WHERE id=6)

Der Datensatz mit ID=6 wird so nur angelegt wenn er noch nicht existiert.

An das SQL Statement hängt man dann nochmal ein Update mit den gleichen Werten dran.

Wenn der Datensatz dann nich vorhanden ist wird er per Insert erstellt. Kleine unsauberkeit ist, dass der Datensatz wenn er nicht vorhanden ist zuerst erstellt und dann gleich nochmal mit den gleichen Werten geupdatet wird.

03.02.2008 - 09:06 Uhr

Spricht irgendwas generell dagegen IronPython einzustzen?

03.02.2008 - 00:04 Uhr

Ich glaub ich hab ne echt brauchbare Lösung gefunden... basierend auf IronPython..... was haltet ihr davon??

Damit funktionieren alle Rechenarten die Python kennt.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using IronPython.Hosting;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string formel = "sqrt(29)*29.5"
            PythonEngine pe = new PythonEngine();
            pe.Execute("from IronPython.Modules.PythonMath import *");
            Console.WriteLine(pe.Evaluate(formel).ToString()) ;
            Console.ReadLine();
        }
    }
}
01.02.2008 - 13:39 Uhr

So???? =)


class custom_DataTable : DataTable
    {
        private bool InChangeEvent = false;
        
        public custom_DataTable()
        {
            this.RowChanged += new DataRowChangeEventHandler(custom_dataTable_RowChanged);
        }

        void custom_dataTable_RowChanged(object sender, DataRowChangeEventArgs e)
        {
            if (InChangeEvent) return;
            this.InChangeEvent = true;
            

            foreach (DataColumn tempcol in this.Columns)
            {
                if (tempcol.GetType() == typeof(custom_DataColumn))
                {
                    custom_DataColumn thiscol = (custom_DataColumn)tempcol;
                    
                    e.Row[thiscol.ColumnName] = 10;
                    
                    
                }
                
            }
            this.InChangeEvent = false;
            
        }
    }

01.02.2008 - 13:36 Uhr

Sorry für meine Blödheit =) aber ich kann dir nicht ganz folgen X(

01.02.2008 - 13:22 Uhr

Hi @all,

hab da mal ne frage.

Hier erstmal ein bisschen Code:


class custom_DataTable : DataTable
    {
        public custom_DataTable()
        {
            this.RowChanged += new DataRowChangeEventHandler(custom_dataTable_RowChanged);
        }

        void custom_dataTable_RowChanged(object sender, DataRowChangeEventArgs e)
        {
            
            foreach (DataColumn tempcol in this.Columns)
            {
                if (tempcol.GetType() == typeof(custom_DataColumn))
                {
                    custom_DataColumn thiscol = (custom_DataColumn)tempcol;
                    e.Row[thiscol.ColumnName] = 10;
                    
                }
                
            }
            
        }
    }

Das funktioniert nicht, weil ich innerhalb des Events einen Wert der row verändere, was wiederum das Event auslöst. Gibt also eine Endlosschleife.

Wenn ich den Code wie folgt abändere funktioniert es. Aber nur weil es funktioniert heißt es ja noch nicht dass es auch schön ist.

Also was sagt ihr? Ist meine Lösung korrekt?


class custom_DataTable : DataTable
    {
        public custom_DataTable()
        {
            this.RowChanged += new DataRowChangeEventHandler(custom_dataTable_RowChanged);
        }

        void custom_dataTable_RowChanged(object sender, DataRowChangeEventArgs e)
        {
            this.RowChanged -= custom_dataTable_RowChanged;
            foreach (DataColumn tempcol in this.Columns)
            {
                if (tempcol.GetType() == typeof(custom_DataColumn))
                {
                    custom_DataColumn thiscol = (custom_DataColumn)tempcol;
                    e.Row[thiscol.ColumnName] = 10;
                    
                }
                
            }
            this.RowChanged += new DataRowChangeEventHandler(custom_dataTable_RowChanged);
        }
    }
31.01.2008 - 21:56 Uhr

Dickes merci dass du dir die Zeit genommen hast.. für die Uhrzeit is mir dass allerdings jetzt etwas zu viel... ich beschäftige mich morgen oder am Wochenende mal damit und melde mich dann.

31.01.2008 - 17:45 Uhr

nochmal danke für deine hilfe.... hab ich soweit jetzt alles kapiert...

Das ganze würde zwar funktionieren ist dann jedoch komplett statisch.

Kannst mir noch en paar Stichworte an den Kopf werfen wenn ich das Ganze in der Art von ner Datatable haben will? Also dass man dynamisch spalten hinzufügen und entfernen kann?

Dass Problem dass sich dadurch natürlich ergeben wird, ist natürlich dass ich dann irgendwie hinterlegen können muss welche Spalten sich aus welchen berechnen ...

Ich hoffe du/ihr versteht was ich meine ....

31.01.2008 - 16:00 Uhr

Oke.. danke für die Info.. bin auch schon ein bisschen weitergekommen.. hab mir jetzt folgendes zusammengebastelt :


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 Test
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            BindingList<Part> temp = new BindingList<Part>();

            dataGridView1.DataSource = temp;
            
        }



        public class Part : INotifyPropertyChanged
        {
            private string name;
            private int number;
            private double number2;

            public event PropertyChangedEventHandler PropertyChanged;

            private void NotifyPropertyChanged(String info)
            {
                    PropertyChanged(this, new PropertyChangedEventArgs(info));
                    
            }

            public Part() { }

            public Part(string nameForPart, int numberForPart)
            {
                PartName = nameForPart;
                PartNumber = numberForPart;
                
            }

            public string PartName
            {
                get { return name; }
                set
                {
                    name = value;
                    NotifyPropertyChanged("PartName");
                }
            }

            public int PartNumber
            {
                get { return number; }
                set
                {
                    number = value;
                    NotifyPropertyChanged("PartNumber");
                }
            }

            public double PartNumber2
            {
                get { 
                        return number2; 
                        
                    }
                set {
                        number2 = Math.Sqrt(number);
                        NotifyPropertyChanged("PartNumber2");    
                    }
            }
        }
    }
}


Bin somit meinem Ziel ein kleines stück näher gekommen... Wenn ich im Datagrid eine neue Zeile einfüge und in der Spalte "PartNumber2" auch etwas eintrage wird der eingetragene werd mit Sqrt(PartNumber) überschrieben. Wenn ich jedoch "Partnumber2" leer lasse dann bleibt es auch leer.

Einzige möglichkeit die mir einfällt ist, in set von "Partnumber" auch Partnumber2 gleich mitzuändern! geht das auch noch anders?

30.01.2008 - 21:49 Uhr

Guck dir mal System.Math an, da wirste alles finden. Für deine spezielle Frage System.Math.Sqrt(double d)

Danke für den Beitrag. Das Funktioniert nur leider anscheinend nicht innerhalb einer Expression einer Datarow!

Noch jemand ne Idee?

30.01.2008 - 20:10 Uhr

Also mit einfachen Rechnoperationen funktioniert es. Was ist aber wenn ich z.B. die Wurzel ziehen muss?

30.01.2008 - 19:50 Uhr

Einfach nur genial... =)FUNKTIONIERT!

30.01.2008 - 19:39 Uhr

Hm ok.... das war dann schonmal ein stoß in die richtige Richtung... ich hoffe ich komme damit klar... ansonsten meld ich mich hier wieder =)

30.01.2008 - 19:07 Uhr

Hallo an alle Hilfsbereiten da draußen!

Mein Ziel ist folgendes :

DataColumns => Datatable => Bindingsource => Datagridview

In den Rows der Datatable sollen Messwerte über das DGV gespeichert werden.

Soweit überhaupt kein problem.

Jetzt die erweiterung die ich gerne machen würde.

In der Datatable soll es DataColumns geben die an eine Berechnung geknüpft sind. Diese sollen auch als Spalten im Datagridview angezeigt, jedoch nicht editierbar sein.

Wenn ich im DataGridView in einer Zeile einen Messwert ändere, sollen alle "Formel Columns" neu berechnet werden.

Ich hoffe meine Idee ist irgendwie rübergekommen.

Leider habe ich überhaupt keinen Plan wie ich dass bewerkstelligen kann. Ich würde mal vermuten, dass ich mir eine eigene DataColumn von der originalen ableiten muss um diese Funktionalität zu implementieren?!?! Aber wie wüsste diese DataColumn dann wann sich in einer Zeile etwas ändert??

Ich suche nicht nach fertigen Lösungen. Ich hoffe nur jemanden zu finden der wirklich Ahnung hat und mir ne kleine ToDo-Liste macht.

Wenn ich weiß was ich tuen muss, dann find ich mich schon irgendwie zurecht!

30.01.2008 - 08:59 Uhr

Hi dr4g0n76,

erstmal Glückwunsch zu diesem tollen Programm. Funktioniert echt Super.

Ich würde gerne deinen Code in einem meiner Programme benutzen. (Ich hoffe dass geht in Ordnung?!?!?)

Soweit funktioniert alles super außer dass der Kompiler Warnungen (siehe unten) ausgibt. Hängt das an VS2008? Oder Kommen die Warnungen immer? Kann man dass beheben ?

Gruß


Warning	1	'System.CodeDom.Compiler.CodeDomProvider.CreateCompiler()' is obsolete: 'Callers should not use the ICodeCompiler interface and should instead use the methods directly on the CodeDomProvider class. Those inheriting from CodeDomProvider must still implement this interface, and should exclude this warning or also obsolete this method.'	C:\Dokumente und Einstellungen\Seebach\Eigene Dateien\Visual Studio 2008\Projects\Werteeingabe2\werte_control\math\CReflectiveEvaluator.cs	20	36	werte_control
29.01.2008 - 16:25 Uhr

Hi@all

hab da mal wieder ne Frage.. =) Über die Suche bin ich nicht fündig geworden.

Und zwar:

Ist es möglich eine Mathematische Formel die in einem String gespeichert ist automatisch berechnen zu lassen? Also unter beachtung aller matematischer Regeln?

z.B. sowas :


string formel = "(2*2+1)/8+(8*8)";

29.01.2008 - 10:49 Uhr

Jupp. Hat funktioniert. THX 👍 👍 👍

29.01.2008 - 09:45 Uhr

Hi@all,

ich habe in meinem Programm ein Datagridview. Die daran gebundene Datatable hat Spalten in die nur Zahlen eingegeben werden können.

D.h. wenn man im Datagridview in diese Spalte buchstaben einträgt kommt eine Fehlermeldung. Diese ist jedoch für den User relativ unverständlich. Wie kann ich das abfangen und eine eigene Messagebox einbinden?

Danke schonmal =)

22.01.2008 - 16:21 Uhr

Ok soweit verstanden.

Da niemand an meinem Code gemeckert hat darf ich also davon ausgehen dass es reicht Dispose aufzurufen damit das Control verschwindet.

Irgendwann wird der GC dass objekt dann "zerstören"?

22.01.2008 - 14:51 Uhr

Hi@all...

Ich habe da mal ne Frage was das Zerstören von Objekten angeht. Folgende Ausgangssituation..

Ich habe eine eigenes Control erstellt.

Nach klick auf einen Button wird eine neue instanz des Controls (Objekt) erstellt und einem splitContainer hinzugefügt:


nc = new new_charge(Convert.ToInt16(comboBox1.SelectedValue), ref npgsqlConnection1);
                nc.Dock = DockStyle.Fill;
                splitContainer1.Panel2.Controls.Add(nc);

Funktioniert einwandfrei.

Nun möchte ich auf dem "Main-Form" einen Weiteren Button der das Objekt vom splitContainer entfernt und auch den Speicher freigibt.

Mit:


nc.Dispose();

verschwindet zwar das Control aus dem splitContainer, ich kann jedoch weiterhin Methoden aus dem Objekt aufrufen. z.B.:


nc.Test();

Anscheinend ist das Objekt also immer noch da.

Jemand einen Denkanstoss für mich?

15.01.2008 - 16:46 Uhr

Hallo Community ....

ich hoffe ich finde hier jemand der sich die Zeit nehmen möchte mir etwas auf die Sprünge zu helfen.

Ich habe mitlerweile schon mehrere Onlinequellen zu C# durch. Unter anderem auch http://www.galileocomputing.de/openbook/visual_csharp/

Ist ja alles schön und gut. Aber mir fehlt der Bezug zur realität. Ich versuche als einsteig eine Minikundenverwaltung zu schreiben mit Postgres als Datenbank.

Ich kann schon Daten in die Datenbank schreiben, aus der Datenbank holen, updaten etc (mit Dataadapter, Connection, Dataset objekten etc). Aber ich merke immer wieder dass ich total unkoordiniert an die Sache rangehe und dann oft die Anwendung wieder über den Haufen werfe.

Jetzt zur eigentlichen Frage. Gibt es ein Buch wo eine Idee bis zum fertigen Programm verfolgt wird? Also ne Richtige Anwendung an der man ne grobe vorgehensweise erlernen kann?

Danke für jede antwort.

18.12.2007 - 08:58 Uhr

sqlBuilder.Append

⚠Append ⚠

mir geht ein Licht auf =)

Edit:

SqlBuilder müsste ja auch für Postgres funktionieren oder?

15.12.2007 - 16:53 Uhr

Was mache ich aber wenn ich das sql-query zur Laufzeit genrieren muss und vorher noch nicht weiß wieviele parameter ich habe?
Dann bleibt wieder nur die Stringverkettung?!?!?
Du kannst die Parameter doch auch dynamisch generieren.

sorry wenn ich so blöd frag. aber hast mal en Beispiel?

14.12.2007 - 15:01 Uhr
  
SELECT CompanyID,CompanyName,CountryCode,City,ZIP,EMail  
FROM Companies  
WHERE CompanyName LIKE @companyNameCriteria  
  

Ok.. eine kleine frage noch.

deine beschreibung mit den parametern ist mir klar. Was mache ich aber wenn ich das sql-query zur Laufzeit genrieren muss und vorher noch nicht weiß wieviele parameter ich habe?
Dann bleibt wieder nur die Stringverkettung?!?!?

Beispiel

SELECT
e.buch||e.jnr||'/'||substr(e.ejahr,3,2) as journal,
e.eingdt,
e.stat,
e.art,

coalesce(CACO3.CACO3,'-------'),
coalesce(TRS.TRS,'-------')

FROM
lims_eingang e

LEFT JOIN

(
SELECT coalesce(to_char(w.vWert,'99999D999'),'!!!Fehlt!!!') as CACO3, w.jnr, w.buch, w.ejahr , p.short
FROM lims_werte w
LEFT JOIN lims_para p on (w.code = p.code and w.buch = p.buch)
where p.short = 'CACO3'
) as CACO3 on (e.jnr = CACO3.jnr and e.buch = CACO3.buch and e.ejahr = CACO3.ejahr)

LEFT JOIN

(
SELECT coalesce(to_char(w.vWert,'99999D999'),'!!!Fehlt!!!') as TRS, w.jnr, w.buch, w.ejahr , p.short
FROM lims_werte w
LEFT JOIN lims_para p on (w.code = p.code and w.buch = p.buch)
where p.short = 'TRS'
) as TRS on (e.jnr = TRS.jnr and e.buch = TRS.buch and e.ejahr = TRS.ejahr)

WHERE
e.ejahr = 2007 and e.buch = 'D'
( and (CACO3.CACO3 != '-------' or TRS.TRS != '-------')

ORDER BY
e.jnr

(habe auf CODE Tags verzichtet weil ich sonst nichts einfärben kann)

Die rot Markierten stellen müssen für jeden Parameter (die der Benutzer aus einer Liste auswählen kann) wiederholt werden.

In diesem Beispiel wäre z.B. CACO3 und TRS ausgewählt.

Dass wird dann ziemlich kompliziert oder?

Im moment mach ich diese abfrage über ein PHP Script mit reiner Stringverkettung. Funktioniert super.

13.12.2007 - 23:24 Uhr

einfach nur wow.. und ein weiteres dankeschön an dich.

Bei mir ist nun der ein oder andere Groschen gefallen.

Muss das Ganze jetzt erstmal verdauen und mich ein wenig damit auseinandersetzen.

Ich denke ich komme nun ein ganzes stück weiter.

13.12.2007 - 10:36 Uhr

Ich kann dir leider zu deinem Problem nichts genaues sagen.

Aber vieliecht hilft dir ein kleines Beispiel.

Wenn man von einem PC der nicht in der Domäne ist eine Dateifreigabe in der Domäne öffnen will, reicht es nicht sich mit einem Benutzernamen aus der Domäne zu authentifizieren.

Der Benutzername lautet dann : Domäne\User

Also wenn die Domäne "test.local" und der Benutzer "BlaBlub" heißt :
test.local\BlaBlub

evtl lässt sich das auch auf dein Problem übertragen.

13.12.2007 - 09:46 Uhr

Erstmal ein dickes danke an euch beide dass ihr euch die zeit nehmt mir zu helfen.

@JuyJuka :
Deine Antwort klingt zwar sehr interessant. Is mir aber als Anfänger etwas komplex =)

@Rainbird
Deine Antwort kann ich zumindest im Ansetz nachvollziehen.

Evtl hast du Zeit und Lust dass mit mir mal an einem konkreten Beispiel durchzugehen.
Ich habe ein Bild einer Beispieldatenbank angehängt die ich mir zu Testzwecken erstellt habe.

Wie gehe ich vor wenn ich dafür ein GUI programmieren will?

  • Anzeigen von Kunden
  • Suchen nach Kunden
  • neuen Kunden anlegen
  • bestehenden Kunden ändern

Wie würde ich vorgehen?

  • Eine "MainForm" mit einem DataGrid in dem die Kunden angezeigt werden und einer Suchmaske die diese dan Filtern kann (erstes Problem : bei hoher Kundenzahl könnte das befüllen dieses Grids sehr lange dauern. Wie kann ich dass lösen?)
  • Datenbank Verbidung über Npgsql (Postgre) die Mainform hätte dann selbst ein NpgsqlCommand, NpgsqlConnection, NpgsqlDataAdapter, ein Dataset, und ein Datagridview welches die Kunden anzeigt.
  • (Wie kann ich dann in den Daten suchen? Kann ein Datagridview selbstständig nach gewissen Kriterien filtern?

Da mir ein Datagridview zum anlegen von neuen Kunden etwas ungeeignet erscheint würde ich ein Zweites Form erstellen das über einen Button aufgerufen wird und Textfelder für Vorname, Nachname etc. enthält. Diesem Form würde ich wiederum NpgsqlCommand, NpgsqlConnection verpassen. Das SQL Command dann aus den Textboxen genrieren und ausführen. Beim schließen des Forms würde dann das Grid im MainForm aktualisiert.

Kunden Bearbeiten würde ich über einen Button im Mainform lösen der ein Weiteres Form mit den Daten des gerade im Datagridview Markierten Kunden zum bearbeiten läd. Wiederum mit NpgsqlCommand, NpgsqlConnection. Das SQL Command würde aus den Feldern generiert und beim klick auf den Save Button ausgeführt.

Ich habe diesen Ansatz bereits ausprobiert und kann es auch soweit umsetzen. Mir kommt dass Ganze aber irgendwie "unschön" vor. Das zusammenbasteln des SQL Commands aus den Textboxen zum Beispiel löse ich über eine verkettung von Strings was sehr aufwendig ist.

Auch wenn die Beispiel Datenbank sehr klein ist würde ich mich über eine Antwort freuen die mich in die Richtung einer "professionellen" Lösung schubst.

11.12.2007 - 23:35 Uhr

verwendetes Datenbanksystem: PostGRE

Hallo an alle Profis da draußen,

ich bin was die C# Programmierung angeht noch relativ jungfäulich. Erst mal kurz zu meinem bisherigen Kenntnissstand (mit 3 's'??? 🤔 )

Ich habe mich schon relativ gut mit den "Basics" von C# beschäftigt (Variablen, Klassen, Methoden etc.)
Ich bin mitlerweile so weit, dass ich eine Anwendung mit GUI erstellen kann die mehrere Controlls hat und diese auch Interagieren können.
Datenbankabfragen an meine Postgre Datenbank funktionieren über Npgsql. Ich kann also Datenbankabfragen in einerm Dataset oder einer Datatable speichern und diese auch in einem Datagridview anzeigen.

Jetzt ist es ja so, dass für die Visualisierung von Daten ein Datagridview nicht immer sinnvoll ist. Beispielsweise wenn ich aus einer Kundentabelle der Datenbank gezielt EINEN Kunden abfrage um ihn zu ändern.

Jetzt die Frage(n):

Wenn ich gezielt nur einen Datensatz aus einer Datenbank beziehe, muss ich trotzdem eine Datatable benutzen um das Ergebnis zu speichern?

Macht es Sinn eine Klasse (zum beispiel Kunde) zu erstellen die die Datenstruktur der Datenbank wiederspiegelt? Ich stelle mir das so vor, dass diese Klasse über eine Methode verfügt die einen Kunden mit einer bestimmten Kundennummer aus der Datenbank holt und somit die Datenstruktur der Klasse befüllt. Die Klasse könnte auch eine Methode haben um einen neuen Kunden in die Datenbank zu schreiben nach dem die Datenstruktur der Klasse durch den Benutzer befüllt wurde.
Ich hoffe mein Gedankengang wird klar und ich liege mit meiner Idee nicht völlig daneben 😄.

Angenommen ich würde diese Klasse verwirklichen müsste ich ein GUI erstellen welches ebenfalls die Datenstruktur (in Form von Textfeldern, Checkboxen, Dropdownlisten, etc.) wiederspiegelt, dann entweder durch den Anwender befüllt und abgespeichert(in die Klasse / das Objekt) und somit in die Datenbank übertragen wird, oder das aus der Datenbank befüllte Objekt zum bearbeiten anzeigt.

Ich hoffe jemand nimmt sich die Zeit, ließt meinen Beitrag und gibt mir einen Denkanstoß in die richtige Richtung. Ich möchte nicht einfach so "umher programmieren" um dann Festzustellen dass ich in die Komplett falsche Richtung gehe.

Gruß
Fracoon

09.10.2007 - 23:08 Uhr

Ist dass DataGridView nicht nur für Datenbankanbindung? Könnte mal jemand ein Beispiel posten wie ich ein DataGrid mit Daten aus einem Array befüllen kann?!?!

09.10.2007 - 22:47 Uhr

PS: alles außer der Registerkarte Diagramm ist bis jetzt funktionstüchtig..

Was mir noch einfällt :

Die ergebnisse werden jeweils in einem eigenen Array gespeichert.

09.10.2007 - 22:45 Uhr

Hallo an alle da draußen...

bin relativ neu was die Entwicklung in C# und Visual Studio angeht.

Um zu lernen programiere ich gerade ein Programm das mir bei eingabe von Kredithöhe, Zins, Tilgung und einem Startdatum für jeden folgemonat die fälligen Zinsen und Tilgung, das Datum und den Restwert des Kredits berechnet...

funktioniert soweit ganz gut.

Das Ergebnis gebe ich im Moment in einem "Feld" aus 5*5 TextBoxen aus die ich mit einer Scrollbar ansteuern kann um durch die einzellnen Monate zu "navigieren".
Quasi meine selbstgebaute Tabelle. Funktioniert auch gut...

Jetzt die Frage:

Gibt es eine Möglichkeit diese Textboxen durch eine Tabelle zu ersetzen ? Diese sollte so Ähnlich aussehen wie in Excel und eine eigene Scrollbar mitbringen.

Würde das ganze wesentlich übersichtlicher machen.

Konnte selbst bis jetzt keine Antwort finden desswegen wende ich mich an die Spezialisten =)

Im Anhang noch ein Bild damit man sich das ganze besser vorstellen kann.