it-swarm.com.de

Wie kann eine Anwendung mit mehreren verschiedenen Benutzersteuerelementen einheitlicher gestaltet werden?

Wir haben eine Anwendung, in der wir mehrere verschiedene Benutzersteuerelemente in einem Hauptfenster kombinieren. Ungefähr 3 der Steuerelemente wurden außerhalb unserer Gruppe entwickelt, sodass wir wirklich nicht viel Kontrolle über ihr Erscheinungsbild haben. Die Haupt-Shell unserer Anwendung verwendet AvalonDock, sodass die Benutzer das Layout nach Belieben neu anordnen können.

Das Problem ist, dass die Anwendung nicht sehr gut zusammen passt, da drei der Steuerelemente nicht in unserer direkten Steuerung enthalten sind.

Ich habe mich also gefragt, was wir tun können, damit sich die Anwendung zusammenhängender anfühlt.

5
Ashley Grenon

Das ist eine wirklich gute Frage.

Option 1

Was ich tun möchte, ist die große rote NOT-AUS-Taste zu drücken und das Projekt zum Stillstand zu bringen. Ich möchte dann die Projektsponsoren und Projektmanager zu einem Meeting einladen und erklären, warum dieses Projekt ein hohes Risiko hat, in Bezug auf die Usability-Aspekte des Projekts zu scheitern.

Bei dem Treffen würde ich darum bitten, dass ein Interaktionsdesigner und ein Informationsarchitekt jetzt eingestellt werden. Ich möchte ihnen auch eine Woche Zeit geben, um sich ein klares Bild von allen Aspekten des Projekts zu machen, und sie die Ergebnisse ihrer Arbeit spätestens in zwei Wochen präsentieren lassen. Dann müsste das Projekt mit dem angestellten Usability-Team neu gestartet werden, das für die Benutzererfahrung der gesamten Anwendung verantwortlich ist, unabhängig davon, wo auf der Welt Benutzersteuerungen erstellt werden. Konsistenz ist der Schlüssel.

Das möchte ich tun.

Option 2

Wenn dies aus organisatorischen oder politischen Gründen nicht möglich ist (oder Ihr Job möglicherweise für die Einberufung eines Meetings ansteht), müssen Sie ein funktionsübergreifendes Team erstellen. Selbst wenn Sie nicht die Kontrolle darüber haben, was andere entwickeln, können Sie immer gemeinsam entscheiden, welchen Stil Sie verwenden möchten. Wie Sie in Ihrer Frage erwähnt haben, müssen alle Entwickler im Sinne der Erreichung eines gemeinsamen Ziels vereinheitlicht werden, damit sich die Benutzersteuerelemente einheitlicher anfühlen. Innerhalb dieses Ziels spielt die Benutzererfahrung der Anwendung eine große Rolle. Sie wissen auch, dass die Anwendung, die Sie gemeinsam erstellen, niemals besser sein wird als die Aufgaben, die Ihre Zielgruppe von Benutzern bei der Veröffentlichung der Anwendung ausführen kann. Vereinheitlichen Sie die Teams, entscheiden Sie sich für einen gemeinsamen Styleguide, wiederholen Sie Drahtmodelle und Modelle und bringen Sie alle Teams dazu, als ein Team zu arbeiten.

2
Benny Skogberg

Dies ist meiner Meinung nach kein leicht zu lösendes Problem, aber da Sie WPF (Windows Presentation Framework) verwenden, können Sie hier einige Optionen ausführen.

  1. Erstellen Sie ein generisches Thema für alle gängigen Steuerelemente wie Textblock und Schaltflächen (z. B. Style TargetType = {x: Static Button}). Auf diese Weise können die anderen Steuerelemente auf Stammebene dasselbe Styling verwenden. Dies funktioniert jedoch nicht, wenn alle Steuerelemente unterschiedliche Stile verwenden.
  2. Hosten Sie jedes der anderen Steuerelemente in einem ContentControl, und zeigen Sie die Steuerelemente mit demselben "Chrome-Rand" an. Spielen Sie möglicherweise mit etwas Panel.ZIndex- und Margin-Leerzeichen, damit es so aussieht, als ob der Rand chrome border tatsächlich Teil des Steuerelements ist).

Das generische Thema kann in das Ressourcenwörterbuch der Anwendung eingefügt werden, damit alle Steuerelemente darauf zugreifen können.

Wenn ein Steuerelement ein helles Thema und ein anderes ein dunkles Thema verwendet, haben Entwickler, wenn sie faul geworden sind, wahrscheinlich einige Farben für den Text fest codiert, sodass eine einfache Änderung des Stammstils das Problem möglicherweise nicht löst.

Der beste Weg, um hier voranzukommen, besteht darin, einen Stil für Ihr Steuerelement zu erstellen, der als Root-Steuerelement verwendet werden soll, und Best Practices zu verwenden, damit die Steuerelemente einfach gestaltet werden können oder wenn sie durch Angabe eines Schlüssels aus dem Ressourcenwörterbuch verwendet werden müssen Standardnamen wie "TitleForegroundBrush" eher etwas zu Spezifisches wie "MyControlDarkBrush". Sobald dies erledigt ist, können Sie diese beiden anderen Steuerelemente mit sanfter Überredung mit Ihrem gemeinsamen Design an Bord bringen. Das Beste daran ist, dass Sie oder ein anderes Team, wenn Sie ein neues Steuerelement erstellen müssen, einfach mit sauberem XAML und Ihrem Stilthema fortfahren können.

1
lifeofmle