Frage

würde Ich mag Anwendung mit Ribbon-Oberfläche zu schaffen, und verhält sich wie folgt aussieht:

  • Anwendung eine Hauptform mit Band hat
  • Band hat mehrere Tabs
  • , wenn der Benutzer die Tabulatortaste Band-Schalter, Panel unten Band Änderungen und zeigt den Inhalt an Ribbon Panel bezogen. Auf diese Weise Band Registerkarte wirkt, als ob es Tab über das ganze Fenster ist.

Zum Beispiel, Band zwei Registerkarten: Menschen und Aufgaben. Wenn Strom ribbon Panel „Menschen“ unten ribbon grid mit Menschen Daten angezeigt werden. Ribbon enthält Befehl für Menschen, Daten zu manipulieren. Wenn der Benutzer schaltet auf „Aufgaben“ Vorsprung auf Band sollte Bewerbungsformular mit folgenden Aufgaben Band angezeigt werden soll.

Frage ist kann Band in diesem Szenario verwendet werden?

I "Office Fluent ™ User Interface Design Guidelines" lesen, die beschreiben, was Sie können und kann nicht mit Band tun, aber ich kann nichts darüber finden.

War es hilfreich?

Lösung 2

Ich fand Southridge Hands-on-Lab auf Codeplex . In lab 3 ist ribbon Steuerbeispiel, das in ähnlicher Weise verwendet wird, wie ich tun sollte.

Southridge Labors werden von Microsoft getan, so nehme ich an, ich kann wie dieses Beispiel auch tun.

Andere Tipps

TLDR: Ich denke, es zu Ihrem Anwendungskonzept paßt, aber es muss eine klare Unterscheidung zwischen den Menschen und Aufgaben Funktionen sein, damit es funktioniert

!

Obwohl Scott hat einen Punkt, dass es im Gegensatz zu etwas sein könnte, was Microsoft beabsichtigt, die Band zu verwenden, halte es die Band auch auf diese Art von Anwendung passt. Da, wenn man wollte ein herkömmliches Register haben, wie Michael empfiehlt Sie, Tasten müßten zwischen den Fenstern oder Aufgaben wechseln. Durch die Verwendung der Band verbinden Sie direkt mit den Kontrollfunktionen / Tasten mit der Aufgabe‘Reiter, so dass es leichter zu lernen, welche Tasten welche Aufgabe verknüpft sind. Tasten, die für die gesamte App verwendet werden, können in die Office-Schaltfläche (das große Office-Logo in der linken oberen Ecke) integriert werden, was eigentlich genau das, was Microsoft tut.

Wir sind derzeit ein Band-ähnliche Symbolleiste Implementierung als auch, so wahrscheinlich bin ich nicht ganz objektiv. Allerdings neige ich dazu, das Band zu denken ganz einfach funktioniert und ermöglicht es Benutzern, einfach Tasten zu entdecken. Eine Randbemerkung: Dies könnte auch mit großen Logos und Drop-Down-Galerie erreicht werden, es ist nur einfach, dass die meisten Band-Pakete zur Verfügung haben diese Dinge umgesetzt werden, so dass keine Notwendigkeit, es zu codieren selbst (es sei denn, Sie kann sehr leicht)

!

Was Sie vorschlagen, ist im Gegensatz zu Microsoft-Richtlinien. Sie können als Verstoß gegen die Richtlinien sein.

Das Band soll mit dokumentenzentrierte Anwendungen eingesetzt werden, wo es ein Dokument ist, und Sie haben Befehle in dem Band es für die Manipulation. Die Registerkarten auf dem Band werden für die Navigation in die Band nur gedacht ... nicht für Ihre Anwendung zu navigieren.

(Having said that ... ich von einigen Anwendungen kennen, die das Band in der Art und Weise verwenden, die Sie beschreiben ... und es scheint sehr gut zu funktionieren!)

Ich lief in Ähnliche Kopfschmerzen, wenn unsere App der Implementierung eine Band zu verwenden. Für die nächste Version, wir gehen zurück auf eine kontextsensitive Werkzeugleiste:)

Wenn Sie Ihre Befehle pro Reiter sind wenige (weniger als 20), dann sollten Sie vielleicht eine herkömmliche Registerkarte mit Schaltflächen für die Befehle am oberen Rande verwenden oder an anderer Stelle in der Registerkarte. Dies würde Ihnen auch die Möglichkeit, Tasten zu haben, die auf die gesamte App (zB Exit-Einstellungen) außerhalb der Registerkarte gelten, die ihren Umfang an den Benutzer (Sie mit der Band tun können nicht etwas) deutlich machen, helfen.

Wenn Sie Ihre Arbeit der Benutzer Informationen zwischen Vergleichen ‚Tabs‘, dann verwenden Sie keinen Tabs überhaupt, sondern getrennte primäre Fenster verwenden (zum Beispiel eines für Menschen und ein für Aufgaben). Jeder kann dann ihre jeweils eigene konventionelle menubar und Symbolleiste haben, und die Benutzer die Fenster nebeneinander auf ihren Bildschirmen, ihre Arbeit zu tun setzen, statt hin und her mit einem Registersteuerschalt.

das OnTabChange Ereignis Verwenden Sie das entsprechende Panel auf die Vorderansicht zu bringen:

procedure TForm1.Ribbon1TabChange(Sender: TObject; const NewIndex,
  OldIndex: Integer; var AllowChange: Boolean);
begin
  case NewIndex of
    0: Panel0.BringToFront;

    1: Panel1.BringToFront;

    2: Panel2.BringToFront;

    3: Panel3.BringToFront;

  end;
end;

Just FYI, ich habe mit DevExpress der xtrabar Suite ein wenig gespielt und haben dieses Register Regelverhalten mit der Tag-Eigenschaft implementiert. Ich erstelle ein Panel-Steuerelement für jede Band Seite dann etwas tun, wie folgt aus:

InitPanels

RibPage1.tag = Panel1
RibPage2.tag = Panel2

' Set Display Properties
'Panel1 displays initially

With Panel1
   .Dock = Fill
   .Show()
End With

With Panel2
   .Dock = Fill
   .Hide()
End With

Ribbon.SelectedPage = RibPage1

Band auf Ausgewählte Seite Ändern

P as Panel = ctype(sender.tag, Panel)
p.hide()

Band Auf Ausgewählte Seite geändert

P as Panel = ctype(sender.tag, Panel)
p.Show()

Ich bin ein Neuling bei der Programmierung, so gibt es wahrscheinlich einige besseren Weg, dies zu tun ist, aber dies scheint für mich zu arbeiten. Wahrscheinlich hängt auch von dem Band-Anbieter.

Hope, das hilft.

Josh

Die neue Version von wpf Band hat nicht die gleichen Einschränkungen wie die vorherigen Versionen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top