Laden...
Avatar #avatar-2094.gif
progger myCSharp.de - Member
Schüler Nähe von München Dabei seit 05.08.2005 1.271 Beiträge
Benutzerbeschreibung

Forenbeiträge von progger Ingesamt 1.271 Beiträge

24.05.2006 - 14:45 Uhr

Wie fandest du das Buch? Ich habs auch gelesen und finde es einfach nur genial. Das ist eine völlig alternative Art um etwas zu lehren, die aber wirklich spitze funktioniert.

22.05.2006 - 17:53 Uhr

Forumsuche!!!! Dazu gibt es sogar ein Tutorial!

22.05.2006 - 17:17 Uhr

Du kannst auch eine Dokumentation im Web anschauen. Inwiefern die vollständig ist, kann ich aber nicht ganz beurteilen.

22.05.2006 - 16:47 Uhr

Z.B. Math.NET von unserem Community-Mitglied cdr. Ansonsten such einfach mal bei Code Project nach "Matrix". Dürftest einiges finden.

21.05.2006 - 17:29 Uhr

Original von Kostas
Ich gehe aus davon aus, das es egal ist, aber der Autor schreibt "Don't use"
Vermutlich gibt es einen Hintergrund.

Der Autor beschreibt eine Coding Guideline (Richtlinie), bei der man beim return keine Klammern drum machen darf. Da kommts dann auch, dass er sagt "Don't use!".
Das wichtige bei Richtlinien ist ja nicht, dass sie das einzig wahre ist, sondern dass alle sich dran halten.

21.05.2006 - 17:25 Uhr

Forumsuche: BeginInvoke/Invoke bzw. FAQ-Artikel.

21.05.2006 - 17:19 Uhr

Das geht auch einfacher @sbertl000: Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
bluma möchte aber, gleub ich Zugriff auf Positionierung usw. haben.

21.05.2006 - 16:09 Uhr

Da gibt es wahrscheinlich keine Möglichkeit im .NET Framework. Schau dir mal IActiveDesktop und COMPONENT bei pinvoke.net an. Vielleicht gehts damit.
EDIT: Auch noch COMPONENTSOPT.

21.05.2006 - 13:52 Uhr

Ich habe meinen PC im Herbst 2003 gekauft und da war das .NET Framework 1.1 dabei.
Aber warum kann man das niemandem zumuten?

  1. Es ist nicht allzu groß
  2. Gibt es inzwischen ziemlich viele Anwendungen, die es verlangen
  3. Nichts spricht dagegen, es mit deiner Anwendung auszuliefern (siehe dazu diesen Post)
21.05.2006 - 11:58 Uhr

Original von BaumBert
Welche Version brauche ich denn dafür ?

Guckst du Produktvergleich: Visual Studio Team System. Also nichts für Hobby-Programmierer.

Ansonsten muss es doch nicht immer eine IDE-Integration sein, oder? NUnit hat z.B. eine sehr nützliche GUI. Ansonsten gibt es das AddIn TestDriven.NET, das NUnit und MbUnit unterstützt.

19.05.2006 - 18:28 Uhr

Original von herbivore
Aber da die Iteratoren in meinem Augen nicht so recht angekommen sind, (...)

Das ist nur in deinen Augen so 😉. Ich fande sie sehr interessant und habe mir daraus auch schon einige Anregungen geholt.

Zum Thema:
Warum funktioniert bei dir

foreach (Label lb in tp.Controls){
    // ...
}

nicht? Für mich ist da alles korrekt.

19.05.2006 - 17:18 Uhr

Schau dir mal die Überladungen von Bitmap.Clone. Da gibt es zwei, bei denen du den zu kopierenden Bereich bestimmen kannst. Dann hast du einen kleinen Ausschnitt aus dem großen Bitmap.

19.05.2006 - 17:15 Uhr

Das ist doch eigentlich nicht zu viel verlangt, dass du das findest. Wenn du die Solution öffnest, müsstest du das Projekt ziemlich schnell gefunden haben. Hier aber trotzdem mal die Komplettlösung: src\Libraries\ICSharpCode.TextEditor.

18.05.2006 - 16:32 Uhr

So was kriegt man normalerweise immer mit Doku raus: XmlDocument.Load(...)

18.05.2006 - 15:43 Uhr

StringAlignment.Center ist aber keine Blocksatz-Ausrichtung, sondern, wie der Name schon sagt zentriert.

18.05.2006 - 15:32 Uhr

Rechtsklick auf die Tableiste -> "New Horizontal/Vertical Tab Group". Dann kannst du die einzelnen Dateien einfach zwischen den verschiedenen Gruppen hin und her ziehen.

17.05.2006 - 19:27 Uhr

Mit Directory.GetFiles() bekommst du alle Dateien in einem Ordner und die FileInfo-Objekte, die du bekommst besitzen diverse Eigenschaften für einige Dateiattribute. Dann musst du nur noch sortieren, z.B. mit einem eigenen Comparer. Schau dir dazu mal die IComparer-Schnittstelle an.

17.05.2006 - 16:06 Uhr

Mit Windows.Forms hat das nicht unbedingt was zu tun. Sondern allgemein mit dem .NET Framework. Siehe dazu auch Speichersünden - Tipps.

16.05.2006 - 14:42 Uhr

Als Ergänzung zu talla: Er meinte (wahrscheinlich) den e-hahn Updater.
Ansonsten kenne ich noch den Sharp AutoUpdater. Ist OpenSource.
Ich würde einfach mal ausprobieren, mit welcher Komponente ich am besten zurecht komme. Vorallem mit den Dateien im Internet, die das Update beschreiben und dem Updater sagen, was er machen soll.

15.05.2006 - 16:50 Uhr

Ich kenne Steigung in Prozent so: Soweit man in den Berg "hineingeht" mal Steigung ist gleich wie man den Berg senkrecht nach oben geht. Das klingt ein bisschen komisch deswegen hänge ich mal ein Bild als Erklärung an.
Wenn du dieselbe Steigung meinst, ist die Berechnung ein Kinderspiel.

15.05.2006 - 16:29 Uhr

An 'nen Baumfrosch kann ich mich auch nicht erinnern. Nur an die Raupe (findest übrigens sehr schöne Exemplare, wenn du bei Google-Bilder nach "Beta Experience" suchst).
Rein interessehalber: Für was brauchst du sowas?

14.05.2006 - 14:43 Uhr

Bei Suche nach "SourceSave" wirdt du nicht sehr viel finden, das Programm heißt nämlich SourceSafe 😉.

14.05.2006 - 14:21 Uhr

Ist in den Einstellungen ein bisschen schwer zu finden: Build -> Advanced -> Output: Debug Info.

14.05.2006 - 12:49 Uhr

Schau dir mal den Codeproject-Artikel DirectX.Capture Class Library an. Mit meiner TV-Karte (Pinnacle) funktionierts. Mir ist aber aufgefallen, dass die Bildqualität um einiges schlechter als die des mitgelieferten Programms ist.

13.05.2006 - 17:38 Uhr

SetCursorPos brauchst du gar nicht. Du kannst auch einfach Cursor.Position setzen (System.Windows.Forms-Namespace).

13.05.2006 - 15:36 Uhr

Hallo sbertl000,

Die Klassen werden nicht in C# 2.0, sondern in Visual Studio 2005 grün hervorgehoben. C# 2.0 ist die Programmiersprache und die hat nichts mit dem Syntax-Highlighting zu tun. Das aber nur am Rande.
Das Highlighting nach einer Liste ALLLER Klassen zu machen, wäre meiner Meinung nach Wahnsinn. Außerdem sieht es blöd aus, wenn die eigenen Klassen nicht hervorgehoben werden. Ich rate dir, den Kontext anzuschauen und an den passenden Stellen den Text grün zu machen (z.B. Klassen/Variablen-Deklaration, Konstruktor, ...).

Gruß,
progger

12.05.2006 - 17:49 Uhr

Ich denke mal, dass "beide" Klassen gleich deklariert werden müssen. Also beide public.

Zur Anzeige im Solution-Explorer: Das musst du wahrscheinlich direkt in der Projektdatei machen. Dazu machst du:

  • Rechtsklick auf dein projekt -> "Unload Project"
  • wieder Rechtsklick "Edit xxx.csproj"
  • dann suchst du "<Compile Include="Form1.Data.cs>"
  • da machst du ein Unterelement "<DependentUpon>Form1.cs</DependentUpon>"
  • Speichern und Rechtsklick auf das Projekt "Reload Project"
    => Alles müsste wie gewünscht laufen.
11.05.2006 - 14:12 Uhr

Original von Kostas
Muss ich da nicht jedes Feld einzeln auslesen
und dem PropertyGrid zuweisen?

Nein! Du weist einfach der Eigenschaft SelectedObject deine Instanz zu. Denk aber daran, dass die Eigenschaften, die angezeigt werden sollen mit [Browsable(true)] gekennzeichnet sein müssen.

11.05.2006 - 14:07 Uhr

Meinst du beim Zeichnen auf ein Graphics-Objekt? Dann gehts das so:

  • mit RotateTransform drehst du als erstes das Graphics-Objekt in einem beliebigen Winkel
  • dann zeichnest du deinen Text
  • dann drehst du das Graphics-Objekt wieder genau zurück
11.05.2006 - 13:54 Uhr

Ist im SourceCode von #D dabei (AddIns\Misc\SubversionAddin). Kannst selber kompilieren und dann einbinden.

11.05.2006 - 08:30 Uhr

Original von progger
Du kannst auch ein ToolStripLabel verwenden. Das wird zwar, glaub ich, nicht im VS-Designer angeboten, kann aber trotzdem auch hergenommen werden.

Hast du das mal probiert? Damit müsste das Problem eigentlich zu lösen sein (kein markieren, kein verändern).
Ansonsten schließe ich mich herbivore an, dass es einfach nicht "normal" ist, sowas zu machen.

09.05.2006 - 18:42 Uhr

Du kannst Bookmarks setzen. Ob du sie per Tastenkombination direkt anspringen kannst, bezweifle ich. Du kannst sie aber der Reihe nach durchklickern. Ich weiß nicht, ob es noch mehr Möglichkeiten gibt, weil ich die eigentlich nie verwende.

09.05.2006 - 15:25 Uhr

Kannst du schon sagen, welcher Anbieter das ist/sein wird?

Wie steht's mit Traffic? Auch wegem Teilen.
Was ist mit der Verfügbarkeit?
Und wie steht es mit Domains: Direkt beim Anbieter dazu buchbar und zu welchen Preisen?
Wie ist das mit Vertragslaufzeit und Preis-Garantie?

Grundsätzlich hätte ich schon Interesses, weil ich zur Zeit auf der Suche nach sowas bin. Und PHP und ASP.NET hab ich fast noch nie gesehen.

08.05.2006 - 18:36 Uhr

Hallo donmarten,

Hast du dir mal das Beispiel angeschaut?

Hier mal eine kleine Einführung:
Auf das MainForm wird, wie du richtig gemacht hast, nur das DockPanel gezogen. Dann hast du einen grauen Kasten. Die einzelnen Toolfenster kannst du jetzt nicht so hinzufügen (so wolltest du es, glaub ich, machen). Die Toolfenster sind extrige Fenster, d.h. du musst sie auch extra designen. Das wichtige ist, dass sie entweder von DockContent erben, oder IDockContent implementieren. Um es dann (während der Laufzeit) anzuzeigen, musst du dann (wenn du von DockContent abgeleitet hast) <deinToolFenster>.Show(<deinDockPanel>) aufrufen. Wenn du direkt IDockContent implementierst, schau einfach wie es in DockContent gemacht ist.

Ich hoffe das hilft dir ein bisschen weiter. Alles Weitere solltest du eigentlich mit der Dokumentation und vor allem dem Beispiel lösen können.

Gruß,
progger

08.05.2006 - 17:46 Uhr

Du musst deine Frage schon präzisieren. Ein einfaches "komm nicht weiter" verhilft dir nicht zu einer passenden Antwort.

08.05.2006 - 17:11 Uhr

Du kannst auch ein ToolStripLabel verwenden. Das wird zwar, glaub ich, nicht im VS-Designer angeboten, kann aber trotzdem auch hergenommen werden.

08.05.2006 - 16:29 Uhr

Ach, jetzt verstehe ich dich. Ich hatte das Problem nicht auf dr4g0n76's Vorhaben bezogen.
Da leuchten mir die Probleme, die du scgilderst ein.

08.05.2006 - 16:05 Uhr

Wenn du .NET 2.0 verwendest:
Nimm statt einem StreamWriter einen XmlWriter. XmlWriter hat die Property Settings, der du ein XmlWriterSettings-Objekt zuweisen kannst. Damit kannst du die gesamte Formatierung bestimmen (z.B. gibt Indent an, ob eingerückt werden soll).

Bei .NET 1.x musst du das ganze händisch machen (ich kenn zumindest keine andere Methode).

08.05.2006 - 15:56 Uhr

Wenn du .NET 1.x verwendest, kannst du keine generischen Klassen hernehmen (außer du steigst um).
Anderenfalls kann sein, dass dir einfach ein "using System.Collections.Generic;" fehlt.

08.05.2006 - 15:52 Uhr

Hallo herbivore,

Original von herbivore
Selbst wenn es zuerst einfacher klingt, fertige Controls zu verwenden, wird sich das m.E. relativ schnell rächen.

Kannst du das noch ein bisschen ausführen? Mir fallen schon ein paar Probleme ein, die auftreten können, aber noch mehr fallen mir ein, wenn ich sowas selber implementieren möchte. Es ist ja nicht nur einfacher, etwas fertiges zu nehmen, sondern solche sind meist auch ausgereifter.

Gruß,
progger

07.05.2006 - 11:54 Uhr

Rotate spiegelt sowieso nicht, sondern dreht das Bild nur. Du musst Scale mit 1 und -1 hernehmen (je nachdem um welche Achse es gespiegelt werden soll).
Wie du das Problem mit den Frames löst, kann ich dir aber nicht sagen.

07.05.2006 - 10:59 Uhr

Bei Codeproject gibt es ein LineCounterAddin, das, wie der Name schon sagt, die Zeilen zählt. Du kannst dann nachlesen, wieviele Zeilen in welchem Projekt oder welcher Datei sind, und wieviele davon richtige Codezeilen sind. Es zeigt dir auch die Anzahl der Kommentare an. Schaus dir am besten mal ein bisschen an.

06.05.2006 - 12:52 Uhr

Hast du es schon im SharpDevelop Forum probiert? Dort gibt es auch einen Bereich für deutsche Threads.
Dort bekommst du bestimmt irgendeine Antwort. Da kennen sich alle aus.

03.05.2006 - 18:50 Uhr

Hallo tigersammy,

Am einfachsten wäre es, ein fertiges (und ausgereiftes) AddIn-System von Drittanbietern zu nehmen. Dazu empfehle ich dir den ICSharpCode.Core, der bei SharpDevelop eingesetzt wird. Dazu gibt es den sehr guten Code Project Artikel Building Applications with the SharpDevelop Core. Es gibt sogar ein kostenloses Ebook zu SharpDevelop, in dem auch die AddIn-Architektur gut beschrieben wird, es bezieht sich aber leider noch auf eine ältere Version: Dissecting a C# Application: Inside SharpDevelop.

Gruß,
progger

03.05.2006 - 18:20 Uhr

Mit der Control.Invalidate()-Methode.

03.05.2006 - 18:19 Uhr

Original von herbivore
Mir fällt gerade auf, dass du statt CsvList eigentlich auch List <CvsElement> verwenden könntest.

@pumi: Aber nur, wenn du .NET 2.0 hast.
Bei .NET 1.1 erbst du am besten von CollectionBase, die, wie der Name schon sagt, als Basis-Klasse für eigene Collections dienen soll.

03.05.2006 - 16:45 Uhr

Vielleicht hilft dir (falls noch nicht selber gesehen) die Lizenzen-Seite von MS weiter. Da gibt es rechts oben auch ein Link zu einem kostenlosen Rückruf-Service bei "konkrete[n] Fragen zu Ihrem Projektvorhaben". Ob das für diese Frage auch gilt, weiß ich allerdings nicht.

03.05.2006 - 16:37 Uhr

Das kompilieren wurde hier auch schon öfter durchgekaut. Z.B. C#-Codestring während der Laufzeit ausführen.
Ich finde das bei deiner Problemstellung aber den falschen Lösungsweg. Warum holst du dir von dem Server nicht eine kompilierte Version? Die ist auch um einiges kleiner, als der komplette SourceCode. Außerdem ist das kompilieren viel zu aufwendig.

03.05.2006 - 16:28 Uhr

Das einfachste wäre, denk ich, folgendes:

  • du hast deine "taktischen Zeichen" als Klassen (eine Oberklasse), die das Zeichnen selbst übernehmen
  • dann hast du ein Control, in dem du alles anzeigen möchtest
  • wenn es neu gezeichnet werden soll (neues Zeichen dazu, oder altes verschoben, etc.), zeichnest du als erstes den Hintergrund, dann in korrekter Reihenfolge alle Zeichen auf ein Bitmap
  • in OnPaint des Controls zeichnest du immer den gerade aktiven Bildausschnitt von dem Bitmap

Das Bitmap dient als eine Art "Zwischenspeicher" damit du nicht immer alles neu zeichnen musst. Wenn du noch Zeichen markieren willst, musst du das halt auch noch zeichnen (aber nicht aufs Bitmap, sondern aufs Control!). Wenn du sie auch noch verschieben willst, und nicht weißt, wie das geht, musst du mal im Forum schauen. Ich werde dazu aber in den nächsten Tagen ein Tutorial posten (kann aber noch ein bisschen dauern!).
Wenn du noch fragen hast, frag ruhig.

Gruß,
progger

03.05.2006 - 16:06 Uhr

Schau dir mal Paint.NET an. Das hat mehrere Ebenen (dort teilweise Layer genannt) und ist opensource.

EDIT: Da hab ich wohl zu lang in Paint.NET rumprobiert, ob das wirklich das gewünschte Verhalten hat 😉.