Laden...
Avatar #avatar-1741.gif
larslovesdotnet myCSharp.de - Member
Software Entwickler near Hamburg Dabei seit 15.10.2005 75 Beiträge
Benutzerbeschreibung

Forenbeiträge von larslovesdotnet Ingesamt 75 Beiträge

12.04.2006 - 11:17 Uhr

Hi,

habe selber noch nie 7zip benutzt, aber falls 7zip Probleme
bereiten sollte, ist eigentlich auch alles mit SharpZipLib machbar.

Gruß
LarsLOvesDotNet

12.04.2006 - 10:25 Uhr

Hi,

einfach

MyForm frm2 = new MyForm();
frm2.Show();

Falls die zweite Forms-Klasse nicht im selben Namespace liegt musst Du
diesen noch mittels using einbinden.

Gruß
LarsLovesDotNet

12.04.2006 - 09:11 Uhr

Hi,

das Problem ist eigentlich ganz einfach. Die COM interfaces zwischen
Office 2000 und Office 2003 sind unterschiedlich. Sprich wenn Du jetzt
einfach alles auf Grundlage von Office 2003 entwickelt hast, wird dieses
mit einer Office 2000 Version nicht kommunizieren können. Das eine benutzt
die Office Lib Vers. 9 die andere Vers. 11. Um abwärtskompatible Office
Anwendungen mit .net zu schreiben. Würde ich immer auf der Basis der 2000 Assemblies arbeiten!
Ah sehe gerade Deine Fehlermeldung, die genau das aussagt was ich gerade
geschrieben habe. Es wird versucht die 11'er Library für die Kommunikation
zu laden, und Office 2000 unterstützt wie gesagt nur die 9'er Version.

Gruß
LarsLovesDotNet

12.04.2006 - 08:57 Uhr

Hi,

dann würde ich aber immer noch den Weg über ein Control gehen und
als Container bespielsweise ein Panel nutzen.

Gruß
LarsLovesDotNet

12.04.2006 - 08:55 Uhr

Hi,

wieso so kompliziert? Denke das ganze als IFrame Html Element einzubinden
dauert nur 30s.

Gruß
LarsLovesDotNet

12.04.2006 - 08:48 Uhr

Hi,

da bietet sich doch ein Webcontrol gerade zu an. Eine Artikeldarstellung wird
einfach als Webcontrol erstellt und dann so oft in die Seite geschrieben, wie
Du Artikel darstellen willst. Bin jetzt mal davon ausgegangen, daß es sich um
ein ASP.net Projekt handelt!?

Gruß
Lars

12.04.2006 - 08:45 Uhr

Hi,

sorry für die wirklich späte Anwort 🙁 In den vergangegen Wochen
habe ich an einem großen Projekt mitgearbeitet und einfach keine
Zeit gefunden die Library in den Status stable release zu bekommen.
Deshalb habe ich auch den Releaseplan von mitte April auf mitte Mai
korrigiert. Wenn alles reibungslos läuft, wird dann auch das Presenation
, das Draw - Format und PDF Export unterstützt. Natürlich melde ich mich
dann hier sobald das Release fertig ist 🙂

Gruß
Lars

14.03.2006 - 08:50 Uhr

Hallo,

erstmal vielen Dank. War auch nicht einfach ein UML Design zu entwerfen,
welches die Library wartbar und User "friendly" hält. Nun aber zu Deiner
Frage. Ja, auch das OpenDocument Format hat sein eigenes Draw Format.
Wobei man klar zwischen dem OpenOffice und OpenDocument Draw
unterscheiden muß. Aber letztendlich sieht das OpenDocument Format
stark nach einer Erweiterung des OpenOffice Dateiformat aus.
Die Implementierung wird mit einem der nächsten Releases erfolgen. Derzeit
wird das Spreadsheet und Text Format unterstützt. (Lesen, Bearbeiten, Erstellen,
und Speichern (.ods,.odt,.html).

Gruß
LarsLovesDotNet

28.02.2006 - 11:20 Uhr

Hi,

Du kannst folgendes machen, um die Knoten hinzu zufügen. Nimm den
InnerText des Knoten, speicher Ihn in einem string, setze dann Knoten
auf ein leeren string. Danach erstellst Du mehrere Knoten und zwar
fügst Du solange Knoten vom Typ Text ein, bis dein Inhalt kommt, den
fügst Du dann als "richtigen" Xml Knoten ein.

z.B. erzeugt einen Text Knoten der kein LocalName oder ähnliches hat

CreateTextNode("Irgendwas tolles");

Gruß
Lars

23.02.2006 - 13:15 Uhr

Hi,

also das mit dem Auto Inkrement als Primary Key sehe ich aber ganz anders.
Am Sinnvollsten sind Guids bzw. Keys die Aufgrund von Unique Identifiern
Pattern erstellt wurden. Ich sage nur zusammen führen von Datenbanken
und oder Tabellen. Das wird mit Autoincrement Werten ne mittelschwere
Katastrophe 😉

Gruß
LarsLovesDotNet

23.02.2006 - 09:35 Uhr

Hi,

die Resourcen findest Du immer über den Datei Pfad also ausegehend
von Deinem Projektordner hin zu der eigebetteten Datei.

in etwa so:

Assembly ass		= Assembly.GetExecutingAssembly();
Stream str = ass.GetManifestResourceStream("MeinProjekt.Resources.bla.xml");

Gruß
LarsLovesDotNet

23.02.2006 - 08:47 Uhr

Hi,

wurde die Resource Datei, denn überhaupt mit verpackt?? Würde da erst mal suchen.

Gruß
LarsLovesDotNet

23.02.2006 - 08:44 Uhr

Hi,

es gilt in Deinem Fall First In. Auch, wenn mit Threading gearbeitet wird, wird
immer eine Anfrage zuerst gekommen sein, deshalb ist das Autoincrement
kein Problem. Probleme treten z.B. nur auf, wenn jemand einen Datensatz
bearbeitet und wieder "Updaten" will und einer anderer hat diesen in der Zeit
gelöscht. Es gibt hierzu verschiedene Design Pattern, z.B. Optimistic Offline Lock, ..
suche mal nach solchen Pattern. At least, der Einsatz von AutoIncrement bei
Mehrbenutzer System die stark beansprucht werden ist nicht zu empfehlen 😉

aber ich muss das System schon sicher verstehen, um die Vor- bzw. Nachteile einschätzen zu können und eventuell darauf umzusteigen! Meinst Du den
Umstieg auf SQL Server? Der ist immer Sinnvoll, wenn Du Enterprise Applications
entwickelst 😉

Gruß
LarsLoveDotNet

23.02.2006 - 08:35 Uhr

Hi,

der Ansatz mit Measure String ist schon korrekt, aber Du musst noch berücksichtigen,
das die dpi Größe mit einbezogen wird. Sehr schön sehen kann man so was,
wenn man einmal eine Grafik mit 75 dpi druckt und danach mit 300. Da tut sich
schon einiges. Auch nicht ohne ist die wirkliche Berechnung der wirklichen Größe der
zu zeichnenden Zeichen. Das Buch Windows Programmierung mit C# von
Charles Petzold könnte hilfreich sein, da steht über diese Zeichen Operationen
und die Größenbrechnung sehr viel drin z.b. die Berechnung von Seitentransformationen, ..

Gruß
LarsLovesDotNet

23.02.2006 - 08:25 Uhr

Hallo zusammen,

es ist mal wieder ein Update verfügbar. Größtenteils handelt es sich um Bugfixes,
aber es sind auch einige Neuerungen hinzugekommen.

  • FrameBuilder, hiermit können Graphic Frames für alle möglichen Anwendungs-
    breiche erstellt werden.
  • Text Sequences
  • Freie Positionierung von Grafiken mittels Koordinaten.
  • PageBreak, Column Break, hiermit lassen sich bspw. Seitenumbrüche steuern

und wie bereits erwähnt einige Bugfixes. Alle User der alten Version sollten
auf die neue Updaten 😉

und wie immer, ist jegliches Feedback herzlich willkommen 🙂

Info & Download; http://AODL.OpenDocument4all.com

Gruß,
LarsLovesDotNet

13.02.2006 - 14:41 Uhr

Hi,

habe zwar keine Lösung für Dein Problem, aber habe heute morgen
auch einen Bug in Visual Studio produziert. Der die ganze IDE lahmgelegt
hat. Wollte mal schnell nen DataSet für Testzwecke bauen und nehme
diesmal den Designer dafür. Füge eine Tabelle und mehrere Columns ein
und sage dann View Code und peng. Da kriege ich doch tatsächlich zu
hören, daß ein kaputtes Fenster handle existiert und zwar im "Blue Screen"
Style ala old Win98 mit Adresse blblbal und so weiter.
Danach konnte ich die Gui von Visual Studio 2005 nicht mehr nutzen.
Es hiess immer Fehler in irgendwellchen UI xml Dateien.

Vielleicht hat ja jemand mal ähnliches erlebt. Mir blieb übrigens nur noch
übrig die IDE abzuschiessen 🙁

Gruß
LarsLovesDotNet

13.02.2006 - 14:33 Uhr

Hi,

nicht zu vergessen, daß man natürlich mit den OR Mapping tools Objekte
wie Kunde, Rechnung, etc. erhält aber viele dieser Framework Ihre Objekt-
daten wiederum intern in DataSets und DataTables halten.

Ein gute Beispiel dafür ist z.B. das Neo framework:
http://neo.codehaus.org/

Gruß
LarsLovesDotNet

13.02.2006 - 14:28 Uhr

Hi,

das wird nicht direkt an Deiner Express Edition liegen, sondern vielmehr
daran das die Flash Com-Komponenten die Du einbinden willst nicht
für .net 2.0 entwickelt bzw. dafür compiliert wurden. Sie werden wahrscheinlich
einige interne Aufrufe durchführen, die unter 1.1 noch erlaubt waren und
nun nicht mehr. Welche das sind kann ich Dir auch nicht sagen, aber Dein
Problem mit 1.1'er interop assemblies habe ich jetzt schon von mehreren
Komponenenten gehört z.B. die OpenOffice Com Komponenten laufen unter
2.0 auch größten teils nicht mehr.

Gruß
LarsLovesDotNet

08.02.2006 - 10:00 Uhr

Hallo zusammen,

nach gut einem Monat und wenig Sonnenlicht😉 ist es vollbracht. Seit gestern
ist die nächste version von AODL 1.2.0.0 beta verfügbar. Es sind etliche
neue Features hinzugekommen. Deshalb nur kurz die Highlights:

  • Support für Dokument im OpenDocument Spreadsheet Format. Lesen, schreiben, editieren und erstellen.
  • Support für Image maps inkl. verschiedener DrawArea regionen.
  • Support office scripts. z.B. kann ein Java script mit einer Image map verknüpft werden.
  • Csv Importer (nur Spreadsheet - Dokumente)
  • TextPlainImporter(nur Text - Dokumente)

und vieles mehr.

Alle Features, sowie Changelog und Download, findet Ihr auf meiner Homepage: http://opendocument4all.com/content/view/16/33/

Gruß,
LarsLovesDotNet

05.01.2006 - 12:11 Uhr

Hallo zusammen,

es ist mal wieder soweit. Ein neues release von AODL ist da. Die Version 1.1.2.0 bringt nun volle Unterstützung (erstellen/lesen/schreiben) für Table of contents / Inhaltsverzeichnis mit. Zusätzlich wurde die Verarbeitungsgeschwindigkeit wieder gesteigert und noch einige Neuerungen. Mehr Infos wie gewohnt auf meiner Homepage. Die ist übrigens neu 😉

http://aodl.opendocument4all.com

Gruß
LarsLovesDotNet

13.12.2005 - 18:42 Uhr

Hallo alle zusammen,

es gibt mal wieder eine Erweiterung der AODL Library.

Neue Features:

  • Support für Paragraph Header (normal und nummeriert)
  • Support für Table Row Header
  • HTML Exporter

Verbesserungen:

  • Besseres Whitespace Handling
  • Schnellere Textprocessing (Laden/Speichern)
  • Diverse Bugfixes

Download und mehr Info: http://aodl.sourceforge.net

Wie immer viel Spass und jegliches Feedback ist willkommen 😉

Gruß
LarsLovesDotNet

24.11.2005 - 11:10 Uhr

Hallo Thorsten,

eigentlich sollte man immer seine Threads zügeln und kontrollieren
können. Im einfachsten Fall bedeutet, dass eine Klasse erstellen
die einen Thread umschliesst die diesen Kontrollieren kann Stop,
Start, Abort , State, .. diese Eigenschaften über public Accesors
zugänglich machen. Dann reicht im normal Fall eine kleine Handler
Klassen die neue Threads erzeugt und die Instanzen in einer
ArrayList oder jedenfalls ner Liste zur Verfügung stellt. Diese
Liste kannst Du dann im Closing Aufruf abarbeiten. Viele Wege
führen nach Rom 😉

Gruss
LarsLovesDotNet

24.11.2005 - 11:04 Uhr

Hi alle zusammen,

letzte Nacht habe ich die neue AODL Version 1.0.5.0 released.
Es sind diverse neue Features hinzugekommen. Hier kurz die
wichtigsten. Für alle neuen Features sind auf der Homepage
natürlich einige Code Snippets verfügbar.

  • Unterstützung für Fuß- und Endnoten

  • Unterstützung für Kopf- und Fußzeilen

  • Neue Paragraphformatierungen Border, Padding, Line Spacing

  • Neue Textformatierungen Outline, Hochgestellt, Tiefgestellt,
    Durchgestrichen, Hintergrundfarbe, Vordergrundfarbe, Schattenwurf

  • Hilfsklassen mit definierten Konstanten für Text - und Paragraph
    formatierungen

Und nochmals Danke für Euer Feedback. 👍

Bugs ? Bitte den Bugtracker auf der Sourceforge.net Projektseite nutzen
Neue Features ? Bitte den Featuretracker auf der Sourceforge.net Projektseite nutzen

Fragen zur Library einfach hier posten 😉

Download : http://aodl.sourceforge.net

Gruss
LarsLovesDotNet

21.11.2005 - 18:33 Uhr

Hi,

erstmal Danke für's Lob. Jupp OpenOffice muss installiert
sein. Wenn ich irgendwann ganz viel Zeit finde, werde
ich vielleicht ein eigenes, auf's nötig beschränkte, OpenOffice
Setup erstellen, welches man dann direkt mit seiner
Anwendung ausliefern könnte. Aber wie gesagt, dass wird
etwas aufwendiger, da der OpenOffice Quellcode mal
schlappe 350 MB gross ist. Mit den Ideen, keine Panik
die kommen von alleine 😉

Gruss
LarsLovesDotNet

21.11.2005 - 10:36 Uhr

Hi,

schön zu hören, dass es gefällt 🙂

Es ist übrigens von beiden, dem Embedded OpenOffice
.net Control und dem Embedded OpenOffice Visual Studio
AddIn eine neue Version raus.
Die neue Version ist ein kompletter Rewrite und behebt
das Repaint Problem der eingebetten OpenOffice Instanz
und führt einen **schnelleren **und **sicheren **Start der
selbigen durch.
Desweiteren hat das Control jetzt auch einen eigenen
OpenOffice OpenFileDialog der nur Dateien zur Auswahl
stellt die auch von OpenOffice Unterstützt werden. Ebenfalls
lässt sich jetzt auch eine Draw Instanz starten.

Und zu guter letzt enthält das Donwload Packet jetzt auch
MDI Beispielprojekt (mit Sourcecode), welches die Nutzung
des Controls aufzeigt.

**Download und mehr Info 😗* http://aodl.sourceforge.net

Gruss
LarsLovesDotNet

16.11.2005 - 12:07 Uhr

Hi Christoph,

technisch gesehen. Ist es tief im inneren ein ActiveX
Control, welches in einem für das wrappen des Interop
Code optimierten ActiveX Container gehostet wird. Das
UserControl bettet dann den ActiveX Container ein
und regelt die OpenOffice Steuerung. Etwas tricky und
komplex um alles zu ereutern. 😉
Der Zugriff intern läuft dann über die CLI UNO Bridge von
OpenOffice. Jupp, es ist leider noch manchmal etwas
träge, aber ich arbeite daran und jupp das ganze
UNO Modell ist ziemlich mächtig, steht den Möglichkeiten
der MS Office interaktion in nichts nach.
Natürlich kannst Du auch sämtliche Daten der angezeigten
Office Dokumente auselesen und oder bearbeiten. Einfach
mal das SDK von OpenOffice 2.0 runterladen, dort sind
auch einige .net Beispiel drin.
Letzt endlich muss OpenOffice natürlich installiert sein, das
ist bei der MS Office Geschichte aber auch der Fall. Es gibt
mittlerweile Standalone Implementierungen von OpenOffice.
Werde irgendwann mal schauen, ob es möglich ist die
OpenOffice Komponenten zu besschneiden , um Sie so klein
wie möglich zu halten und dann eine zweite Add In Version
mit integrierten OpenOffice zu erstellen.

Gruss
LarsLovesDotNet

16.11.2005 - 11:34 Uhr

Hi alle zusammen,

nutzt Ihr OpenOffice? Ja, dann gute Nachrichten, mit dem Embedded OpenOffice .net Add In erweitert Ihr Eure IDE um ein voll funtionales Tabbed OpenOffice Fenster. Also kein lästiges hin und her schalten zwischen OpenOffice und der IDE. Einfach Office Dokumente direkt in Visual Studio erstellen, öffnen und bearbeiten.

Das .net User Control, welches das ermöglicht ist ebenfalls von mir entwickelt und steht ebenfalls zum Download bereit. Mit dem UserControl könnt Ihr in euren .net Forms einfach OpenOffice einbetten. Einfach das Control auf die Form ziehen und ab geht's. 😉

Beides ist frei erhältlich das Add In ist GPL und das Control LGPL.
Mehr Infos auf der Homepage von AODL.
http://aodl.sourceforge.net/index.html

Beide Produkte sind im Endeffekt Nebenprodukte die bei der Programmierung von AODL entstanden sind. Wird hier vorgestellt AODL- Library für die Erstellung von Dokumenten im OpenDocument Format für OpenOffice,StarOffice,.. . Da ich dort sehr viele NUnit Tests habe die Dokumente im OpenDocument erstllen, war ich das hin und herschalten einfach leid 😉

Hier mal zwei Screens:

siehe Anhang

Gruss
LarsLovesDotNet

16.11.2005 - 11:18 Uhr

Hi,

versuchs mal mit der SelectedValue Property.

Gruss
LarsLovesDotNet

14.11.2005 - 09:33 Uhr

Hi,

dafür kannst Du IC Sharplib nutzen, ist beim Bau von Sharpdevelop entstanden
und auch dort zu finden. http://sharpdevelop.com/ Der Quellcode
ist offen zu kannst Du dann die einzelnen Implementierungen sehen 😉

Gruss
LarsLovesDotNet

14.11.2005 - 08:59 Uhr

Hi alle zusammen,

das AODL 1.0.4.0 beta release ist draussen. Ab jetzt werden ebenfalls
Standard Bookmarks, Bokkmark ranges, TabStops mit TabStop Styles,
XLinks (Web, FTP, Telnet) und das laden von vorhandenen OpenDocument
Textdokumenten unterstützt.
Das Laden ist noch experimentell. Also immer, wenn Ihr etwas ladet und wieder
speichern wollt einen anderen Namen wählen.

Gruss
LarsLovesDotNet

04.11.2005 - 09:15 Uhr

Hi,

Du solltest dafür lieber XMlDocument nutzen. Mit XmlDocument
kannst Du Deine Xml Dateien bequem laden, verändern und speichern 😉


XmlDocument doc = new XmlDocument();
doc.Load(myFile);
XmlNode  xnode = doc.SelectSingleNode("config/test");
if(xnode != null)
   xnode.InnerText = "Wat neues";
doc.Save(myfile);

Gruss
LarsLovesDotNet

04.11.2005 - 09:08 Uhr

Hi,

um das Lesen und speichern Deines Textes zu vereinfachen, solltest
Du vielleicht lieber die RichtextBox nutzen. Dann hast Du gleich
die Methoden LoadFile und SaveFile inkl. 😉

Jupp Cursor wechseln. -> Cursor.WaitCursor -> tu was -> Cursor.Default

Gruss
LarsLovesDotNet

02.11.2005 - 09:25 Uhr

Hi,

warum so kompliziert ? Du brauchst aus der User32.dll eigentlich
nur SetForegroundWindow und FindWindow. Suchen aktivieren
und dann per SendKeys Klasse des Frameworks Deine Befehle
bzw. Buchstaben senden 😉

Gruss
LarsLOvesDotNet

02.11.2005 - 09:16 Uhr

Hi,

also Clicks auf bestimmte Koordinaten ist so ohne weiteres
nicht möglich. Registriere einfach mal das Click Ereignis der
Form. Dann wirst Du sehen, dass die EventArgs keine Koorditnaten
enthalten. Die werden nur bei MouseMove & Co mitgeliefert.
Wenn es Dir darum geht Clicks auf Steuerelemente Deiner
Form zu simulieren, dann geht das über Reflection. Nachfolgendes
Beispiel geht davon aus, dass ein auf der Form plazierter
Button bei auslösen seines Click Ereignisses die private
Methode button1_Click aufruft.

z.B. So 😉


using System;
using System.Reflection;

namespace TestApp
{
	/// <summary>
	/// Zusammenfassung für Class1.
	/// </summary>
	public class Class1
	{
		public Class1()
		{
			Form1 frm				= new Form1();
			frm.GetType().InvokeMember("button1_Click", 
				BindingFlags.Public | BindingFlags.NonPublic | 
				BindingFlags.Instance |
				BindingFlags.InvokeMethod,
				null, frm, new Object[2] {null, null});
		}
	}
}

Gruss
LarsLovesDotNet

01.11.2005 - 11:46 Uhr

Hi,

dafür könntest Du internal nehmen, dann ist der Zugriff
nur aus diesem Assembly festgelegt. Bedeutet natürlich,
dass Du dann die Klassen am besten in ein eigenes
Assembly z.B. dll auslagerst.

Gruss
LarsLovesDotnet

01.11.2005 - 11:34 Uhr

Hi,

wieso schaust Du nicht einfach nach Programmstart
nach, ob die Datei schon da ist oder nicht. Wenn
nicht Dialog "Neue Anlegen oder alte benutzen".
Kann ja sein das Dein Anwender die alte Datei gesichert
hat und event. sein System gerade neu gemacht hat.

Gruss
Lars

27.10.2005 - 14:22 Uhr

Hi Green,

hier einfach mal die Klasse für lau 😉


using System;
using System.Windows.Forms;

namespace TestControl
{
	/// <summary>
	/// MyDatagRid mit Shift + space abfangen
	/// </summary>
	public class MyDataGrid : DataGrid
	{
		public MyDataGrid()
		{
		}

		/// <summary>
		/// Verarbeitet eine Befehlstaste.
		/// </summary>
		/// <param name="msg">Eine als Verweis übergebene <see cref="T:System.Windows.Forms.Message"/>, die die zu verarbeitende Fenstermeldung darstellt.</param>
		/// <param name="keyData">Einer der <see cref="T:System.Windows.Forms.Keys"/>-Werte, der die zu verarbeitende Taste darstellt.</param>
		/// <returns>
		/// 	<see langword="true"/>, wenn das Zeichen vom Steuerelement verarbeitet wurde, andernfalls <see langword="false"/>.
		/// </returns>
		protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
		{
			if(msg.WParam.ToInt32() == (int) Keys.Space)
				 if((keyData & Keys.Shift) == Keys.Shift)
					return true;

			return base.ProcessCmdKey (ref msg, keyData);
		}

	}
}


Gruss
LarsLovesDotNet

27.10.2005 - 14:05 Uhr

Hi,

doch doch, wenn Du alles Sauber wie im Model View Controler
Pattern implementierst. Dann kannst Du Chefe irgendwann
sagen, warum bringen wir nicht auch ne PDA Version raus
und brauchst dafür nur noch einen neuen PDA View zu
implementieren. Immer schön alles was mit Anwendungslogik
zu tun bloss nicht in die Gui bauen. Tu Dir denn gefallen
und starte einfach gleich nach diesem Prinzip, es ist einfacher
als später irgendwann da ein Wochenende zu sitzen und alles
umzuschreiben und zu denken ach hätte ich doch 😉

Gruss
LarsLovesDotNet

27.10.2005 - 09:02 Uhr

Hi,

dafür musst Du Dir eine eigene DataGrid Klasse
entwerfen, welche von DataGrid erbt und
dort die Methode ProcessCmdKey überschreiben.


protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
     //Konrolliere keyData
}

Gruss
LarsLovesDotNet

27.10.2005 - 08:57 Uhr

Hi,

verstehe ich nicht ganz, da das Lable Control folgendes
Unterstützt.

this.label1.Text	= "Hallo\nZeilenumbruch";

Erzeugt einen Zeilenumbruch innerhalb des Lable Text.
Wenn Deine Anwendung nur ein Viereck darstellt, kann
er das Zeichen nicht darstellen, als o nutz doch einfach \n

Gruss
LarsLovesDotNet

26.10.2005 - 11:56 Uhr

Hi,

kann mich da Timo's Meinung nur anschliessen. Die Testabteilungen
einiger grosser Softwarehersteller machen nichts anderes als die
Software selbst und das Verhalten mit anderer Software zu testen.
Und das das ganze Jahr (boah wat langweilig)
Wenn, dann müsstest Du das ganze komplett automatisieren.
Was wiederum bedeutet z.B die ganzen Registry keys auslesen mit
Software Name, Version, etc. ..
Wenn Du das alles von Hand machen willst, denke ich wird das nichts
denn installierte Komponenten nutzen häufig vorhandene dll's von
Windows und ebenfalls welche von Drittanbietern. Die ganze dll Höhle
sieht man erst, mit speziellen Prozess Viewern die auch geladene
Abhängigkeiten anzeigen, da kann einem manchmal ganz schwindelig
werden. Aber gerade das ist ein Punkt an dem es häufig aufgrund von
versionskonflikten und schlecht entworfenen Schnittstellen kracht.
Schau Dir mal das tool von Belarc an. Die
können schon mal alles auslesen 😉

Aber, ich kenne das, wenn man einfach zu gerne entwickelt 😉
Also viel Spass dabei 👍

Gruss
LarsLovesDotNet

26.10.2005 - 08:48 Uhr

Hi,

dafür solltest Du schon events nutzen, denn genau
das ist die Stärke der events ansonsten müsstest
Du für so was das Observer Pattern mit Nutzung
von Interfaces implementieren (dann wärs sauber).
Vielleicht so jede Klasse in der, wenn etwas bestimmtes
Eintritt, das ein MenuItem aktiviert bzw. deaktiviert.
Nutzt dafür ein statisches event. Deine Mainform
mit dem Menu registriert diese events und führt die
Aktivierungen bzw. Deaktivierungen aus. So kannst
Du ohne viel Aufwand von überall Dein Menu steuern.

Gruss
LarsLovesDotNet

25.10.2005 - 12:40 Uhr

Hi,

wenn Du die Clipboard Klasse nutzt musst Du bei SetDataObject
angeben, wo der Text herkommt. Wird in der TextBox geclickt
dann die, wird in der RichtextBox geclickt dann halt die.

Clipboard.SetDataObject(textBox1.SelectedText);

Gruss
LarsLovesDotNet

24.10.2005 - 16:11 Uhr

Hi,

in der dot net sdk Doku ist das ausführlich beschrieben.
Einfach Tab Index wählen dann Zwischenablage
eingeben. Dort steht wie s geht.
Ansonsten die Klasse die Du suchst heisst Clipboard 😉

Gruss
LarsLovesDotNet

24.10.2005 - 15:57 Uhr

Hallo Soulfly,

jupp das geht dafür musst Du aber Deine
Menuitems selbst zeichnen. Also von MenuItem
erben und dann OnMeasureItem und OnDrawItem
überschreiben, .. 😉
Bei Codeproject gibt's aber schon ein Office 2003
MenuControl, dass brauchst Du event. nur anzupassen!?

http://www.codeproject.com/cs/menu/MhOffice2003Menus.asp

Gruss
LarsLovesDotNet

24.10.2005 - 08:58 Uhr

Hi,

hier ne kurze Beschreibung, zu was kann Euch die Library bringen.
Auf den Punkt gebracht, könnt Ihr mit der Library Dokumente im
OpenDocument Format erzeugen. Ein OpenDocument wird in XML
beschrieben und in einem ZipArchive gespeichert. Ist also kein
Speicher Fresser wie doc. Natürlich könntet Ihr die XMl Dateien
für Eure OpenDocument Dokumente auch selbst mit Hilfe der
Klassen des Xml Namespace erstellen, das wird aber sehr aufwendig
da die Schema Beschreibung für den Dokomenten Aufbau
fast 18000 Zeilen lang ist. AODL macht Euch das ganze viel
einfacher und Ihr könnt das ganze Dokument mit wirklichen Objekten
Aufbauen. Damit das ganze wirklich einfach ist mache ich extremen
Einsatz des Mapping und des Facade Pattern. Mapping - ich verstecke
vor Euch die Komplextität des Xml Aufbaus und Facade ich verstecke
vor Euch die Komplexität der Bezeihung zwischen den Xml Elementen
untereinander.

Um AODL zu nutzen brauch **:::

Ihr könnt das ganze z.B. dazu nutzen um Eure Anwendungen die
sonst Word bedienen, die Dokumenten Erstellung als PlugIn auszugliedern
und dann ein PlugIn für OpenDocument und eines für Word zu
machen. Dann kann der Endanwender entscheiden, ob er Word oder
OpenDocument erzeugt 😉

Hier noch ein kleines Code Snippet, was zeigt wie easy das Ganze
für Euch zu implementieren ist.


//Create new TextDocument
TextDocument doc		= new TextDocument();
doc.New();
//Create new Table
Table table				= new Table(doc, "table1");
//Intialize the table
table.Init(5, 3, 16.99);
//Fill text into cells
foreach(Row r in table.Rows)
	foreach(Cell c in r.Cells)
		c.InsertText("Hello");
//create new Paragraph
Paragraph p				= new Paragraph(doc, "P1");
//Create new FormatedText
FormatedText ft			= new FormatedText(p, "T1", "Hello World");
//Set italic
((TextStyle)ft.Style).Properties.Italic = "italic";
//Add formated text to the paragraph
p.TextContent.Add(ft);
//Add the paragraph to the first cell of the table
table.Rows[0].Cells[0].Content.Add(p);
//Add the table to the documents content collection
doc.Content.Add(table);
//Save it
doc.SaveTo("tablewithstyles.odt");

Auf der Homepage gibt's noch mehr Snippets.
http://aodl.sourceforge.net/snippets.php

Falls noch Fragen, immer fragen 😉

Gruss
LarsLovesDotNet

24.10.2005 - 08:31 Uhr

Hi,

denke dass wird etwas komplizierter, denn
Du kannst zwar den Prozess so starten, hast
aber natürlich keinen weiteren Zugriff drauf, es sei
denn ftp.exe stellt dafür Schnittstellen bereit, was
ich aber nicht glaube und da das ne DOS Anwendung
ist kannst Du dem ganzen nicht mal ne Windows
Nachricht senden. Wüsste nicht wie??
Wenn Du FTP in Dein Programm integrieren willst,
implementiere lieber gleich ne Lösung in C#.
Auf Codeproject.com solltest Du was finden.

Gruss
LarsLovesDotNet

23.10.2005 - 15:45 Uhr

Hi,

habe AODL upgedated. Jetzt werden Frames mit Grafiken
und alle mit OpenOffice mitgelieferten Schriften unterstützt.

Gruss
LarsLovesDotNet

23.10.2005 - 08:58 Uhr

Hi,

du solltest von Deinem Class Browser Fenster direkt
das Mdi Child mit dem Editor Control aufrufen und dann
diesem Child den Focus geben. Dafür sollte dieses Mdi
Child eine öffenliche Methode zur
Verfügung stellen, welche dann zum einen die
Textstelle sucht und den Cursor dort plaziert (dafür
die Methode Select() wählen) und
zum anderen den Focus auf das Edit Control setzt.

Gruss
LarsLovesDotNet

19.10.2005 - 19:41 Uhr

Hi,

habe noch mal gegoogelt MapQuest scheint ganz
nett zu sein, man kann jedenfalls ohne Probleme
auf die Karten linken (ohne Anmeldung). Wäre
auch was für ne Webbrowser Control implementierung.

http://www.mapquest.com/features/main.adp?page=lf_main

Gruss
LarsLovesDotNet