Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Erzeugen einer Visio-ähnlichen Designoberfläche (allgemeine Fragen

0 views
Skip to first unread message

Stampede

unread,
Nov 5, 2009, 2:50:04 AM11/5/09
to
Hallo zusammen,
ich möchte eine einfache, aber wenn möglich erweiterbare, Designoberfläche
entwickeln (verwenden).
Die .NET Version ist 3.5 oder auch die Beta von 4.0, da es sich um ein
Forschungsprojekt handelt ist das nicht so genau.
Ich brauche einen Designer für Modelle (wie UML, BPMN, oder ähnliches). Nun
stellt sich mir dir Frage ob es hier eine saubere und vor allem schnelle (im
Bezug auf Performance) Lösung gibt.
Alles was mir einfällt sind folgende zwei Möglichkeiten:
1. PictureBox oder ähnliches und alles selbst zeichnen und im Hintergrund
merke wo, was, wie dargestellt werden soll. Bei jeder Änderung/Interaktion
(Hervorheben eines Elements bei MouseOver, Einblenden von
Element-spezifischen Schaltflächen oder ähnliches) müsste dann aber alles neu
gezeichnet werden. Ich kann mir nicht vorstellen, dass das bei größeren
Modellen noch sonderlich performant ist.
2. Custom Controls: Jedes verfügbare Element wird als Custom Control
erzeugt. Jedoch ist hier der Aufwand zur Entwicklungszeit sehr hoch und auch
bei Erweiterungen oder Änderungen könnten schnell Probleme auftreten. Da ich
noch nie mit sehr vielen Controls in einem Form gearbeitet habe, habe ich
auch keinerlei Erfahrung über die Performance bei dieser Alternative.

Da es sehr viele Tools gibt, die einigermaßen vernünftige und schnelle
Designer Oberflächen implementieren, dachte ich es gibt vielleicht eine
saubere Möglichkeit so etwas zu implementieren. Ob Windows Forms oder WPF
eingesetzt wird ist mir eigentlich auch egal.

Wichtig wäre lediglich, dass C# bzw. managed Code verwendet wird.

Kann mir hier jemand eine Richtung weisen oder Erfahrungen teilen oder sonst
irgendwie weiterhelfen?

Mit freundlichen Grüßen,

Florian

Timo Falk

unread,
Nov 16, 2009, 4:35:02 AM11/16/09
to
Am Wed, 4 Nov 2009 23:50:04 -0800 schrieb Stampede:

> Hallo zusammen,
> ich m�chte eine einfache, aber wenn m�glich erweiterbare, Designoberfl�che
> entwickeln (verwenden).

[..]

> Kann mir hier jemand eine Richtung weisen oder Erfahrungen teilen oder sonst
> irgendwie weiterhelfen?

Du suchst vielleicht die Visual Studio Shell?
http://msdn.microsoft.com/en-us/vsx2008/products/bb933751.aspx?ppud=4

Silb�r

Immo Landwerth

unread,
Nov 16, 2009, 4:46:04 AM11/16/09
to

Hast Du die mal verwendet? Ich finde die VS Shell eine gelungene Idee.
Aber wenn ich den Op richtig verstanden habe, sollte es einfach sein
und sehe ich die VS Shell nicht unbedingt ganz vorne.... :-(

--
Immo Landwerth

Immo Landwerth

unread,
Nov 16, 2009, 5:05:21 AM11/16/09
to
Stampede wrote:

> ich möchte eine einfache, aber wenn möglich erweiterbare, Designoberfläche
> entwickeln (verwenden).
> Die .NET Version ist 3.5 oder auch die Beta von 4.0, da es sich um ein
> Forschungsprojekt handelt ist das nicht so genau.
> Ich brauche einen Designer für Modelle (wie UML, BPMN, oder ähnliches). Nun
> stellt sich mir dir Frage ob es hier eine saubere und vor allem schnelle (im
> Bezug auf Performance) Lösung gibt.

Wenn es was kosten, darf würde ich mir mal ILOG Diagram for .NET ansehen:

http://www.ilog.de/products/diagramnet/

Allerdings ist ILOG im allgemeinen nicht gerade günstig - zumindest
rangieren die Preise für die Gantt Komponente schon fast in der Liga
unverschämt (kein Vergleich zu den gängigen Komponenten Suites, die
maximal vierstellig kosten und keine Laufzeitgebühren erheben).

Ansonsten gäbe es noch Essential Diagram von Syncfusion:

[Essential Diagram for WPF]
http://www.syncfusion.com/products/wpf/diagram

[Essential Diagram for Windows Forms]
http://www.syncfusion.com/products/windows-forms/diagram

> Kann mir hier jemand eine Richtung weisen oder Erfahrungen teilen oder sonst
> irgendwie weiterhelfen?

Ansonsten kannst Du Dir auch mal die Windows Workflow Foundation (WF)
anschauen. Damit kannst Du zwar nicht vollständig beliebige Prozesse
malen, sondern ausschließlich ausführbare Workflows definieren.

Bei WF würde ich Dir allerdings nur die neue Version aus dem .NET
Framework 4.0 empfehlen. Innerhalb von Visual Studio ist das Teil schon
ziemlich beeindruckend. Ist auf Basis von WPF, erlaubt graphisches
Debuggen, enthält Unterstützung für VB Expressions nebst Code Editor und
IntelliSense etc.

Den Designer kannst Du sogar in Deinen eigenen Anwendungen selbst
hosten. Die Doku diesbezüglich ist derzeit leider noch ein wenig rar.
Ferner weiß ich noch nicht, welche Features man alle noch in seiner
Anwendung hat. Zum Beispiel scheint der VB Editor nebst IntelliSense
derzeit nicht für eigene Anwendungen zu Verfügung zu stehen. Da
Microsoft den Editor allerdings mal als selbständige Komponenten
veröffentlichen wollte, bin ich diesbezüglich noch relativ optimistisch.
Wie das das für das Debugging aussieht, weiß ich allerdings nicht.

[Introduction to Workflow 4.0]
http://channel9.msdn.com/learn/courses/VS2010/WCFWF/IntroToWF/

Speziell interessant für den Designer ist Übung 10.

[Exercise 10: Hosted Designer]
http://channel9.msdn.com/learn/courses/VS2010/WCFWF/IntroToWF/Exercise-10-Hosted-Designer/

[Word Dokument mit allen Übungen]
http://ecn.channel9.msdn.com/o9/learn/VS2010/Labs/IntroToWF/Lab.docx

[Source Code aller Übungen]
http://ecn.channel9.msdn.com/o9/learn/VS2010/Labs/IntroToWF/Source.zip

--
Immo Landwerth

G�nter Prossliner

unread,
Nov 16, 2009, 11:02:31 AM11/16/09
to
Hallo Stampede!

> ich m�chte eine einfache, aber wenn m�glich erweiterbare,
> Designoberfl�che entwickeln (verwenden).

Auf jeden Fall solltest Du mal einen Blick auf die Visual Studio DSL
("Domain Specific Languages") Tools werfen. In diesem kannst Du die Shapes
und die m�glichen Verbindungen zwischen diesen �ber einen Designer
festlegen. Es sind diverse Darstellungen "out-of-the-box", aber auch
ownerdrawn m�glich.

Diese sind (inzwischen) Teil des VS SDKs.

[Domain-Specific Language Tools]
http://msdn.microsoft.com/en-us/library/bb126235.aspx

[Download details: Visual Studio 2008 SDK 1.1]
http://www.microsoft.com/downloads/details.aspx?FamilyId=59EC6EC3-4273-48A3-BA25-DC925A45584D&displaylang=en

Im SDK sind auch Beispiele (Basic, Class Desiger und Flowchart IIRC)
vorhanden welche Du Dir ansehen kannst.


OK?
mfg GP


0 new messages