다음을 통해 공유


WidgetManager.DeleteWidget(String) 메서드

정의

위젯 호스트에서 위젯 제거를 요청합니다.

public:
 virtual void DeleteWidget(Platform::String ^ widgetId) = DeleteWidget;
void DeleteWidget(winrt::hstring const& widgetId);
public void DeleteWidget(string widgetId);
function deleteWidget(widgetId)
Public Sub DeleteWidget (widgetId As String)

매개 변수

widgetId
String

Platform::String

winrt::hstring

제거할 위젯의 고유 식별자입니다. 위젯 ID 값은 에 의해 WidgetManager동적으로 생성됩니다. 위젯 ID는 위젯을 만드는 순간부터 위젯이 삭제되는 순간까지 위젯에 대해 동일하게 유지됩니다. 위젯 ID는 모든 위젯 및 모든 위젯 공급자에서 고유한 값입니다.

구현

M:Microsoft.Windows.Widgets.Providers.IWidgetManager.DeleteWidget(System.String) M:Microsoft.Windows.Widgets.Providers.IWidgetManager.DeleteWidget(Platform::String) M:Microsoft.Windows.Widgets.Providers.IWidgetManager.DeleteWidget(winrt::hstring)

예제

다음 예제에서는 지정된 를 사용하여 모든 위젯을 삭제합니다.

/*
* Sample output:
* Deleted Widget with Id: {D8FEC89F-9A89-44B1-A52D-F04C515B0141}
*/
using namespace std;
using namespace winrt;

class WidgetManagerOperations
{
    void DeleteAllClockWidgets()
    {
        WidgetManager widgetManager = WidgetManager::GetDefault();
        com_array<WidgetInfo> widgetInfos = widgetManager.GetWidgetInfos();

        for (const auto& widgetInfo : widgetInfos)
        {
            if (widgetInfo.WidgetContext().DefinitionName() == L"clockWidget")
            {
                hstring widgetId = widgetInfo.WidgetContext().Id();
                widgetManager.DeleteWidget(widgetId);

                wcout << L"Deleted Widget with Id: " << widgetId << endl;
            }
        }
    }
}

설명

이 메서드가 호출되면 공급자는 메서드를 통해 DeleteWidget(String, String) 위젯이 삭제되었다는 알림을 받습니다.

이미 삭제된 위젯의 ID로 이 메서드를 호출해도 아무런 효과가 없습니다.

적용 대상