für Windows .NET-Core stören, Xamarin.Forms
unterstützt WPF offiziell nicht bis 3.0
.
re: https://blog.xamarin.com/glimpse-future-xamarin-forms-3-0/
Im Sinne einer Tray-Anwendung, dh nativen Code von Windows und würde kein Teil Xamarin.Forms
UI-Code sein, aber der nativen Code von Windows, die Benutzeroberfläche der App würde ein-/auszublenden (assumably Xamarin .Forms basierend)
Für Mac OS, Xamarin.Forms
wird über Xamarin.Mac
unterstützt, und ist derzeit in einer "Vorschau" Version.
Soweit es sich um eine Werkzeugablage-App auf macOS handelt, können Sie in Xamarin.Mac
ein Element (Symbol und/oder textbasiert) in der Systemstatusleiste erstellen.
Typischerweise wird dies in den NSApplicationDelegate.DidFinishLaunching
gemacht und ist einfach wie:
statusItem = NSStatusBar.SystemStatusBar.CreateStatusItem(NSStatusItemLength.Variable);
statusItem.Button.Image = new NSImage("moviemadness_icon_dark.png")
{
Template = true
};
statusItem.Button.Action = new Selector("StatusItemButtonAction:");
In diesem Beispiel jederzeit das Symbol/Text in dem Status abgegriffen wird, die StatusItemButtonAction
Methode ausgelöst wird und es entweder beendet mich, wenn Sie haben gleichzeitig die Strg-Taste gedrückt, sonst läuft die StatusBarPopOver
, die in meinem Fall eine NSPopover
erstellt und eine eingebettete UI zeigt, die den Status des mobilen App-Servers, die aktuellen Benutzer der App, die App-Analyse usw. anzeigt ...
[Action("StatusItemButtonAction:")]
public void StatusItemButtonAction(NSStatusBarButton sender)
{
var currentEvent = NSApplication.SharedApplication.CurrentEvent;
if (currentEvent.ModifierFlags.HasFlag(NSEventModifierMask.AlternateKeyMask) ||
currentEvent.ModifierFlags.HasFlag(NSEventModifierMask.ControlKeyMask))
NSApplication.SharedApplication.Terminate(this);
else
StatusBarPopOver();
}