WidgetManager.GetWidgetInfos Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene la información almacenada de todos los widgets asociados a la aplicación que llama.
public:
virtual Platform::Array <WidgetInfo ^> ^ GetWidgetInfos() = GetWidgetInfos;
winrt::array_view <WidgetInfo const&> GetWidgetInfos();
public WidgetInfo[] GetWidgetInfos();
function getWidgetInfos()
Public Function GetWidgetInfos () As WidgetInfo()
Devoluciones
Matriz de WidgetInfo objetos que contienen información sobre los widgets asociados.
Implementaciones
Ejemplos
En el ejemplo de código siguiente se muestra cómo recuperar la información de todos los widgets que pertenecen a la aplicación que realiza la llamada. En este ejemplo se actualizan los widgets que no se han actualizado en un día o más.
using namespace std;
using namespace winrt;
using namespace Windows::Foundations;
using namespace Microsoft::Windows::Widgets;
using namespace Microsoft::Windows::Widgets::Providers;
class WidgetManagerOperations
{
void UpdateWidgetsWith24HourOutdate()
{
com_array<WidgetInfo> widgetInfos = WidgetManager::GetDefault().GetWidgetInfos();
for (const auto widgetInfo : widgetInfos)
{
if (widgetInfo.WidgetContext().DefinitionName() == L"clockWidget")
{
auto diffInSeconds = static_cast<long long int>(clock::to_time_t(end), clock::to_time_t(beginning));
auto diffInDays = (((diffInSeconds / 60) / 60) / 24);
if (diffInDays >= 1)
{
WidgetUpdateRequestOptions options{widgetInfo.WidgetContext().Id()};
options.Template(LR"({
"type": "AdaptiveCard",
"version": "1.5",
"body": [
{
"type": "TextBlock",
"text": "Today is: ${date}"
}
]
})");
options.Data(LR"({
"date": "05-23-2022"
})");
widgetManager.UpdateWidget(options);
}
}
}
}
}