WidgetManager.UpdateWidget(WidgetUpdateRequestOptions) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt aktualisierte Inhalte für ein Widget für den Widgethost bereit.
public:
virtual void UpdateWidget(WidgetUpdateRequestOptions ^ widgetUpdateRequestOptions) = UpdateWidget;
void UpdateWidget(WidgetUpdateRequestOptions const& widgetUpdateRequestOptions);
public void UpdateWidget(WidgetUpdateRequestOptions widgetUpdateRequestOptions);
function updateWidget(widgetUpdateRequestOptions)
Public Sub UpdateWidget (widgetUpdateRequestOptions As WidgetUpdateRequestOptions)
Parameter
- widgetUpdateRequestOptions
- WidgetUpdateRequestOptions
Ein WidgetUpdateRequestOptions-Objekt , das den Inhalt enthält, mit dem das Widget aktualisiert werden soll.
Implementiert
Beispiele
Im folgenden Codebeispiel wird eine typische Verwendung von UpdateWidget veranschaulicht. Microsoft.Windows. Widgets.Providers.WidgetManager.GetWidgetInfos wird aufgerufen, um die Liste der WidgetInfo-Objekte für die aktiven Widgets abzurufen, die dem Widgetanbieter zugeordnet sind. Für jedes Widget werden eine visuelle Vorlage und Datenvorlage generiert und an den UpdateWidget-Aufruf in einem WidgetUpdateRequestOptions-Objekt übergeben.
using namespace winrt;
using namespace Microsoft::Windows::Widgets;
using namespace Microsoft::Windows::Widgets::Providers;
class WidgetManagerOperations
{
void InitializeWidgets(hstring myWidgetId)
{
WidgetManager widgetManager = WidgetManager::GetDefault();
com_array<WidgetInfo> widgetInfos = widgetManager.GetWidgetInfos();
for (const auto& widgetInfo : widgetInfos)
{
if (widgetInfo.WidgetContext().IsActive())
{
WidgetUpdateRequestOptions options{myWidgetId};
options.Template(LR"({
"type": "AdaptiveCard",
"version": "1.5",
"body": [
{
"type": "TextBlock",
"text": "${greeting}"
}
]
})");
options.Data(LR"({
"greeting": "Hello"
})");
widgetManager.UpdateWidget(options);
}
}
}
}
Hinweise
Jede Variable, die nicht in der WidgetUpdateRequestOptions-Klasse festgelegt ist, wird nicht aktualisiert. Wenn Sie beispielsweise nur die Daten des Widgets aktualisieren möchten, aber die vorhandene visuelle Vorlage und den benutzerdefinierten Zustand beibehalten möchten, legen Sie nur die Microsoft.Windows fest. Widgets.Providers.WidgetUpdateRequestOptions.Data-Eigenschaft, die Daten des Widgets werden aktualisiert, aber die Vorlage und der benutzerdefinierte Zustand werden nicht geändert.
UpdateWidget kann auch verwendet werden, um jeden gespeicherten Wert zu löschen, indem eine leere Zeichenfolge für den zu löschenden Wert festgelegt wird. Wenn Sie beispielsweise den gespeicherten benutzerdefinierten Zustand des Widgets löschen möchten, können Sie den Microsoft.Windows festlegen. Widgets.Providers.WidgetUpdateRequestOptions.CustomState-Eigenschaft auf eine leere Zeichenfolge, die den gespeicherten benutzerdefinierten Zustand löscht, sobald UpdateWidget aufgerufen wird.
Wenn Sie diese Funktion aufrufen, um ein gelöschtes Widget zu aktualisieren, ein Widget, das ihrer App nicht zugeordnet ist, oder die Verwendung einer nicht vorhandenen Widget-ID führt dazu, dass das Update ignoriert wird.