Bagikan melalui


XamlDirect.RemoveEventHandler Metode

Definisi

Menghapus penanganan aktivitas yang ditentukan dari IXamlDirectObject ini. Biasanya, handler yang dimaksud ditambahkan oleh XamlDirect.AddEventHandler.

public:
 virtual void RemoveEventHandler(IXamlDirectObject ^ xamlDirectObject, XamlEventIndex eventIndex, Platform::Object ^ handler) = RemoveEventHandler;
void RemoveEventHandler(IXamlDirectObject const& xamlDirectObject, XamlEventIndex const& eventIndex, IInspectable const& handler);
public void RemoveEventHandler(IXamlDirectObject xamlDirectObject, XamlEventIndex eventIndex, object handler);
function removeEventHandler(xamlDirectObject, eventIndex, handler)
Public Sub RemoveEventHandler (xamlDirectObject As IXamlDirectObject, eventIndex As XamlEventIndex, handler As Object)

Parameter

xamlDirectObject
IXamlDirectObject

Referensi ke IXamlDirectObject saat ini.

eventIndex
XamlEventIndex

Pengidentifikasi untuk peristiwa guna menghapus handel untuk ditentukan melalui enum XamlEventIndex .

handler
Object

Platform::Object

IInspectable

Referensi ke implementasi handler yang ditentukan.

Contoh

Contoh berikut menunjukkan cara menambahkan/memodifikasi dan menghapus peristiwa PointerEntered melalui instans tertentu dari PointerEventHandler pada kontrol ToggleSwitch dari instans IXamlDirectObject-nya .

XamlDirect xd = XamlDirect.GetDefault();

IXamlDirectObject toggleSwitch = xd.CreateInstance(XamlTypeIndex.ToggleSwitch);

PointerEventHandler toggleSwitchPointerHandler = new PointerEventHandler((sender, args) =>
{
    if (sender is ToggleSwitch)
    {
        ((ToggleSwitch)sender).IsOn = !((ToggleSwitch)sender).IsOn;
    }
});

xd.AddEventHandler(toggleSwitch, XamlEventIndex.UIElement_PointerEntered, toggleSwitchPointerHandler);
xd.RemoveEventHandler(toggleSwitch, XamlEventIndex.UIElement_PointerEntered, toggleSwitchPointerHandler);
XamlDirect^ xd = XamlDirect::GetDefault();

IXamlDirectObject^ toggleSwitch = xd->CreateInstance(XamlTypeIndex::ToggleSwitch);

PointerEventHandler^ toggleSwitchPointerHandler = ref new PointerEventHandler([&](Platform::Object^ sender, PointerRoutedEventArgs^ args)
{
    ToggleSwitch^ ts = dynamic_cast<ToggleSwitch^>(sender);
    if (nullptr != ts)
    {
        ts->IsOn = !ts->IsOn;
    }
});

xd->AddEventHandler(toggleSwitch, XamlEventIndex::UIElement_PointerEntered, toggleSwitchPointerHandler);
xd->RemoveEventHandler(toggleSwitch, XamlEventIndex::UIElement_PointerEntered, toggleSwitchPointerHandler);

Keterangan

RemoveEventHandler hanya dapat digunakan untuk menghapus penanganan aktivitas untuk peristiwa yang didukung oleh enumerasi XamlEventIndex .

Memanggil metode ini tidak berpengaruh jika tidak ada penangan yang terdaftar dengan kriteria yang cocok dengan parameter input untuk panggilan metode.

Metode ini mengabaikan apakah parameter handledEventsToo benar dalam panggilan XamlDirect.AddEventHandler yang awalnya melampirkan handler.

Berlaku untuk

Lihat juga