2009-06-11 1 views
14

Ich muss eine Desktop-Anwendung schreiben, um Daten in einer XML-Datei gespeichert bearbeiten. Das Format wird durch eine XML-Schemadatei (.xsd) definiert. Das Format ist ziemlich komplex.Erstellen Sie eine GUI aus einem XML-Schema automatisch

Gibt es Tools, die automatisch eine grundlegende GUI erzeugen kann? Es ist noch nicht entschieden, welche Sprache verwendet werden soll. Ich habe Erfahrung in Python und C++ mit WxWidgets und C# (.NET 1) mit Windows Forms.

+2

Sie können sich WPF/Xaml anschauen. – Nate

Antwort

0

Ich bin mir nicht ganz sicher, ob ich dir völlig von Hilfe sein kann @Adrian, aber ich habe etwas ganz in der Nähe erforscht, was Sie diskutieren ...

mit so etwas wie Linq to XML kann Sie bei der Validierung der eingegebenen Daten unterstützen, da es bereits Methoden gibt, die die Daten für Sie validieren.

Soweit ich mich erinnere, gibt es ein paar Tools, die Sie dynamisch erstellen die App erlauben ... link

Hoffnung, das hilft.

1

Eine Lösung könnte sein, eine XSL-Transformation zu schreiben, die die XML-Datei in eine XAML-Datei konvertiert.

1

Wenn die GUI einfach sein wird und Sie über die Geometrie der Komponenten (Widgets) in den Dialogen nicht stören, wird Qt eine gute Option sein. Eigentlich arbeite ich an einer ähnlichen Aufgabe für mein Projekt und mein Ziel war es, die Formulardaten mithilfe einer XML-Datei zu validieren.

Qt verwenden, ist es möglich, jedes Widget auf dem Dialog zur Laufzeit für den Zugriff durch den Objektnamen verwenden. Damit kann die Validierung auf den Dialoginhalt angewendet werden.

alle Dialoge erstellen wird noch einfacher, da Sie das Widget-Typ und bestimmte Informationen haben und mit Layouts können faszinierende Ergebnisse erzielt werden.

1

Es lohnt sich einen Blick auf Jaxfront nehmen die in der Lage ist, eine XSD zu konsumieren und ein Formular erzeugen (einschließlich HTML). Sie können auch ein Instanz-XML-Dokument bereitstellen, damit es in die GUI geladen wird, und auch Instanz-XML-Dokumente speichern.

Ich versuchte es mit einem unserer ziemlich komplizierten XSDs und es funktionierte ziemlich gut.

Leider ist es in Java geschrieben - ich bin immer noch auf der Suche nach etwas, das .NET-Webformulare oder XAML/WPF erzeugen kann! In der Tat wären sogar XFORMS gut.

0

Es gibt ein experimentelles Tool, das automatisch eine Desktop-UI für den Umgang mit in XML gespeicherten Daten erstellt. Es heißt .Es ist Teil einer Reihe von Tools für die Verarbeitung von XML-Daten auf verschiedene Arten, z. B. das Erstellen von C++ - Code aus einem XML-Schema zur nativen Darstellung der Daten in C++ und das Einbetten von Parsing und Schreiben.

Dies ist vielleicht nicht die produktionsfertige Lösung, die Sie suchen, aber es ist ein Anfang und eine Quelle für Inspiration. Es ist Open Source, daher sind Beiträge sicherlich willkommen.

0

"XAmple XML Editor Projekt stellt einen Java-Swing-basierten XML-Editor, der ein gegebenes Schema analysiert und generiert dann eine dokumentenspezifische grafische Benutzeroberfläche. Im Gegensatz zu anderen XML-Editoren, macht der Xample XML-Editor GUI nicht nur eine Baumdarstellung des XML-Dokuments sondern eine logische Kombination des XML-Dokuments und des jeweiligen XML-Schemas.Die Benutzeroberfläche des XML-Editors ist sehr logisch und intuitiv verständlich.Der Benutzer muss sich nicht mit XML vertraut machen, um gültige XML-Dokumente mit erheblicher Komplexitätaufbereiten zu können und XML Schema-Sprachen und a-priori-Kenntnisse über die strukturellen Anforderungen der Dokumente. "

Ich habe es versucht und sogar mein nicht-technischer Chef mag es. Sie können sie unverändert verwenden oder als Bibliothek verwenden, um eine eigene Java-basierte Benutzeroberfläche zu erstellen.

+0

Wissen Sie, welche Lizenz (falls vorhanden) für dieses Projekt gilt? –

+0

Nein, Sie müssten diesem Link folgen und vielleicht den Autor kontaktieren. –