Laden...
F
feadur myCSharp.de - Member
Entwickler Bonn Dabei seit 11.03.2005 722 Beiträge
Benutzerbeschreibung

Forenbeiträge von feadur Ingesamt 722 Beiträge

20.12.2006 - 19:16 Uhr

Hallo zusammen,

ich finde im Grunde nichts verwerfliches daran, die ProgressBar einer Form von einer anderen Klasse aus zu steuern.
Man muss sich halt darüber im Klaren sein, dass dies relativ "Quick&Dirty" ist. Für das Hauptformular einer Anwendung empfiehlt es sich daher, ausschließlich mit Events zu arbeiten.

20.12.2006 - 17:43 Uhr

Dafür gibt es in ASP.NET das Table und das DataGrid Control. Ansonsten hilft natürlich auch immer selfhtml.org =)

20.12.2006 - 17:39 Uhr

<br /> ist die XML-valide Variante des Zeilenumbruchs.

20.12.2006 - 17:37 Uhr

aber wo erstellst du denn die andere klasse? das müsste ja dann entweder in Main() oder in der Form geschehen. dann kannst du diesem objekt doch eine referenz auf die form übergeben.

20.12.2006 - 16:09 Uhr

Das hängt von der eingestellten Culture ab.

Thread.CurrentThread.CurrentUICulture.NumberFormat.NumberDecimalSeparator

20.12.2006 - 16:07 Uhr

warum hast du denn kein objekt?
da wirst du wohl nicht drum rum kommen =) ansonsten würde ich das mit einer Methode machen. SetProgressbarVal() oder sowas.
siehe vielleicht auch
[FAQ] Kommunikation von 2 Forms

20.12.2006 - 16:04 Uhr

hallo,

typedefs gibt es in c# (m.E. glücklicherweise) nicht.

20.12.2006 - 14:52 Uhr

Hallo Golo,

ich denke darin liegt das Problem von UnitTests. Alles was über Methoden bzw. Objektgrenzen hinausgeht, also von externen Daten abhängt, ist mit Unit Tests nur sehr schwer zu testen.

Eine Lösung sehe ich im Aufbau einer Testumgebung, in der die Testfälle mit den realen Daten (z.b. Cookies) arbeiten können. Gewissermaßen also eine Parallelanwendung zum Testen. =)

20.12.2006 - 14:43 Uhr

So wie ich das sehe, handelt es sich um valides XML.

Wo hast du genau Probleme, was hast du schon gemacht, wo knallt es??

Du musst schon etwas konkreter werden damit wir dir helfen können.

gruß

20.12.2006 - 14:30 Uhr

du darfst sie publizieren und auch gewerblich vertreiben.

20.12.2006 - 13:16 Uhr

ja =)

Ein vollständiger Pfad zu einer Datei enthält auch einen Dateinamen. Also z.b.

c:\Storage Card\Daten\Telefonbuch\datei.txt

Aber deine Fehlermeldung liegt an den Slashes.

Das kannst du auf zwei Arten lösen

1.


string path = "c:\\Storage Card\\Daten\\Telefonbuch\\datei.txt";


string path = @"c:\Storage Card\Daten\Telefonbuch\datei.txt"

20.12.2006 - 13:02 Uhr

noch was, es reicht schon, den Code und die Fehlermedlung zu posten =)

20.12.2006 - 12:59 Uhr

Du musst auch den Pfad zu einer Datei angeben, "C:" reicht da nicht aus.

20.12.2006 - 12:45 Uhr

.Dock = DockStyle Top ordnet die Controls immer an die oberste Stelle, also sowohl in Y als auch in Z Richtung. Deshalb wird das 2. Control das 1. verdecken. Zur Lösung würde ich dir DockPanel empfehlen.

20.12.2006 - 11:05 Uhr

Bitte benutz statt dessen Arrays bzw. List<>
siehe auch Dynamische Variablennamen

20.12.2006 - 10:53 Uhr

Eine weitere Möglichkeit stellt die MAC Adresse dar, welche eindeutig ist.
Allerdings lassen sich MAC Adressen auch manipulieren. Aber es ist zumindest sicherer als ein Registry Key.

20.12.2006 - 10:17 Uhr

Hallo Ben,

noch ein Tipp von mir: SharpDevelop ist seit der Version 2.1 in der Lage, VB.NET Code in C# zu übersetzen und umgekehrt.
Damit könntest du deine alten Programme nach C# umwandeln und sehen, wie sich Sprachkonstrukte hier verhalten. Was natürlich nicht die Lektüre eine guten Buches ersetzt... =)
http://www.icsharpcode.net/OpenSource/SD/Default.aspx

19.12.2006 - 23:44 Uhr

Hallo Buck,

hast du dir eigentlich den Thread durchgelesen? =) Es wurden doch jetzt genug Lösungswege beschrieben. Und auch welche, die sich nicht für dein Vorhaben eignen, z.b. Löschen mittels einer foreach Iterration.

Zum Löschen aller Labels:


for (int i=this.Controls.Count-1; i>=0; i--)            
            {
                if (this.Controls[i] is Label)
                {
                    this.Controls.RemoveAt(i); 
                }
            }

19.12.2006 - 20:28 Uhr

Original von ben

Ich würde nun gerne wissen, was das "public clsTest()" auf sich hat.
Ist es nun eine Subroutine (void) oder eine Function?

Das ist der Konstruktor deiner Klasse.
Dieser entspricht dem New() in VB.Net.

19.12.2006 - 18:26 Uhr

Hi,

aber html ist ja nicht immer valides xml, es sei denn es ist xhtml =)
ich würde daher schon regex einsetzen, bzw. eine state-machine implementieren.

19.12.2006 - 18:16 Uhr

Du könntest statt einem String ein LinkButton auf deiner Page erstellen und dafür das Click-Event anmelden.

19.12.2006 - 18:02 Uhr

Sehr nette Klasse, vielen Dank!

19.12.2006 - 16:56 Uhr

Du musst erst das Assembly per Assembly.Load() laden (unter Angabe des Full Qualified-Names). Dann kannst du mit Assembly.CreateInstance() deine Instanz erstellen.

19.12.2006 - 16:33 Uhr

Das find ich auch.

Bei Dingen wie prob, funzt, vllt, aba, höre ich relativ schnell auf zu lesen.

19.12.2006 - 16:29 Uhr

Hallo JunkyXL,

dem kann ich mich nicht anschließen. Immer public bedeutet auch, dass alle deine Klassen von fremden Assemblies verwendet werden können. Ich benutze daher recht oft den internal Modifier. Bei Kontrollen ist es auch sinnvoll, Klassen in der Hauptklasse zu kapseln, damit nur diese für den Endanwender sichtbar wird.

19.12.2006 - 02:15 Uhr

List<clsZufallszahl> colZufallszahl = new List<clsZufallszahl>();

P.S. bitte guide to C# oder ähnliches lesen.

19.12.2006 - 01:35 Uhr

class RT : RichTextBox
    {
        protected override bool ProcessDialogKey(Keys keyData)
        {
            if (keyData == Keys.Enter)
            {
                //mach was
            }
            return base.ProcessDialogKey(keyData);
        }
    }

18.12.2006 - 20:19 Uhr

.Close() schließt nur des Fenster. Wenn du das Objekt killen willst, nimm .Dispose()

18.12.2006 - 20:12 Uhr

Hallo und herzlich willkommen im Forum!

Ich würde dir zum Einstieg, die Lektüre eines guten Buches an Herz legen, z.b. "Die Kunst zu Programmieren" von Charles Petzold, das in die C# Programmierung und in die Programmierung allgemein einführt.

Die richtige IDE gibt es nicht, sondern nur eine, die dir gefällt. Es bieten sich die Express Version vom Visual Studio oder SharpDevelop an. (Beides kostenslos, letzteres GNU) Alternativ ist es als Anfänger auch nicht verkehrt, nur per Editor und Compiler zu entwickeln.

Gruß

18.12.2006 - 18:59 Uhr

Hi,

wie erstellst du denn überhaupt Objekte deiner Klasse? Das müsste ja an der Stelle schon nicht klappen, da sie als abstract deklariert ist. Weiterhin passt der Constructor (AKlasseNNN) nicht zum Klassennamen (KlasseXYZ). Ich will ja nicht rumnörgeln, aber ich finde auch die Bennennung deiner Klassen und Methoden (xxNNN, xxxXYZ) etwas unüblich... 🙂 Was besagt die Fehlermeldung?

Gruß

18.12.2006 - 17:42 Uhr

mhhh, eine möglichkeit wäre, die Primary Interop Assemblies ebenfalls mit auszuliefern und von deinem setup aus deren installation zu starten.
du kannst auch versuchen, die Microsoft.Office.Interop.Excel.Dll manuell zum setup hinzuzufügen.

18.12.2006 - 17:21 Uhr

Indem du einen Setup für deine Anwendung erstellst und diesen auslieferst.

18.12.2006 - 17:08 Uhr

du musst sicherstellen, dass das assembly Microsoft.Office.Interop.Excel.Dll im GAC des Zielrechners vorhanden ist, oder diese Datei im Verzeichnis deiner Anwendung existiert.

18.12.2006 - 16:21 Uhr

Hi,

also ich lasse mich von Musik beim Codieren oftmals ein wenig einlullen. Die geschwindigkeit in der ich code schreibe hängt dann vom tempo der musik ab. =)
deshalb vermeide ich eigentlich, musik beim codieren zu hören, es sei denn die jeweilige aufgabe ist enorm langweilig bzw. trivial.

18.12.2006 - 16:17 Uhr

Hallo,

setz mal die HideSelection Eigenschaften auf false.

Gruß

18.12.2006 - 15:37 Uhr

Synatktisch ist das ok. Was gibt es denn für eine Fehlermeldung? Ich vermute mal, dass fields nicht als public deklariert wurde.

18.12.2006 - 14:45 Uhr

Hallo,

natürlich können auch Zeilen hinzugefügt werden. Dazu musst du dafür sorgen, dass immer eine leere Zeile zur Eingabe bereitsteht. Es gibt dazu aber auch Artikel wie Sand am Meer, einfach mal googlen.
Hier z.b. ein netter Artikel: http://dotnetjunkies.com/Article/65DC168F-B2AD-408B-8AA0-AD90DD739317.dcik

Gruß

18.12.2006 - 14:22 Uhr

Ok, dann macht es Sinn =)

18.12.2006 - 14:20 Uhr

Hallo,

Ich würde es mit einem editierbaren Datagrid versuchen.

Gruß

18.12.2006 - 14:18 Uhr

Hallo,

wann soll denn dann die Validierung stattfinden, wenn nicht beim Verlassen des Controls oder nach Textänderung?

Gruß

17.12.2006 - 20:25 Uhr

Original von thejudge

  
foreach (Control ctrl in Controls)  
{  
 if (ctrl is Label) // die if kannst du ja gegebenfalls verändern  
 {  
  // label entfernen  
 }  
}  
  

Hallo thejudge,

das wird nicht funktionieren, da ctrl nicht aus der zu durchlaufenden collection gelöscht werden darf.

17.12.2006 - 14:21 Uhr

klar, wir haben alle nichts besseres zu tun als dein projekt fertig zu machen... =)

17.12.2006 - 04:11 Uhr

nach allem was ich gelesen habe, ist


private const UInt32 MouseEventRightDown = 0x008; 

aber kann es nicht mit sicherheit sagen.

17.12.2006 - 04:08 Uhr

Original von al3ko
ich meine, es so verstanden zu haben, dass in der main methode lediglich die objekte erzeugt werden und in den klassen die baupläne meines bruches sind? das ist doch der witz bei der oop, oder?

der witz an der oop ist vor allem, dass klassen wiederverwendbar sind. das wäre aber nicht der fall, wenn du darin daten per Console.ReadLine() einliest. Denn dann wären deine klassen auf den anwendungstyp konsolen-applikation beschränkt.

16.12.2006 - 19:33 Uhr

Hallo,

ich würde dir raten, Tastatureingaben in deinem Objektmodell zu vermeiden. Wenn du eine Klasse schreibst, die einen Bruch abbildet, ist das eine gute Idee. Tastatureingaben sollten aber IMMER nur durch die Main Methode gemacht werden, und an die jeweiligen Klassen weitergegeben werden. Dazu hast du ja auch schon Eigenschaften definiert. Wenn du deine Klasse irgendwann einmal in einer Win-Form Applikation einsetzten willst, wirst du mit den Conse.ReadLine() Aufrufen Probleme bekommen. Deshalb: Tastatureingaben und Objektmodell immer strikt trennen. Ich hoffe das war einigermaßen verständlich erklärt =)

Gruß

16.12.2006 - 18:16 Uhr

Hallo,

wenn du bei google "screenshot c#" eingibst, kommt an 1. stelle sowas:

http://www.developerfusion.co.uk/show/4630/

Sorry, aber ich verstehe wirklich nicht, warum man sowas nicht selbst suchen und finden kann.

Gruß

16.12.2006 - 02:44 Uhr

das ist natürlich einfacher, aber um

existenceResultat.Close();

auszuführen, ist dann der finally block notwendig. naja, muss jeder machen wie er will.