ComponentChangedEventHandler 代理人
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
代表將處理事件 ComponentChanged 的方法。
public delegate void ComponentChangedEventHandler(System::Object ^ sender, ComponentChangedEventArgs ^ e);
[System.Runtime.InteropServices.ComVisible(true)]
public delegate void ComponentChangedEventHandler(object sender, ComponentChangedEventArgs e);
public delegate void ComponentChangedEventHandler(object sender, ComponentChangedEventArgs e);
[<System.Runtime.InteropServices.ComVisible(true)>]
type ComponentChangedEventHandler = delegate of obj * ComponentChangedEventArgs -> unit
type ComponentChangedEventHandler = delegate of obj * ComponentChangedEventArgs -> unit
Public Delegate Sub ComponentChangedEventHandler(sender As Object, e As ComponentChangedEventArgs)
參數
- sender
- Object
事件的 來源。
ComponentChangedEventArgs A 包含事件資料。
- 屬性
範例
此範例示範註冊 a ComponentChangedEventHandler 並處理 ComponentChanged 事件。
public:
void LinkComponentChangedEvent( IComponentChangeService^ changeService )
{
// Registers an event handler for the ComponentChanged event.
changeService->ComponentChanged += gcnew ComponentChangedEventHandler(
this, &ComponentChangedEventHandlerExample::OnComponentChanged );
}
private:
void OnComponentChanged( Object^ sender, ComponentChangedEventArgs^ e )
{
// Displays changed component information on the console.
Console::WriteLine( "Type of the component that has changed: " +
e->Component->GetType()->FullName );
Console::WriteLine( "Name of the member of the component that has changed: " +
e->Member->Name );
Console::WriteLine( "Old value of the member: " + e->OldValue );
Console::WriteLine( "New value of the member: " + e->NewValue );
}
public void LinkComponentChangedEvent(IComponentChangeService changeService)
{
// Registers an event handler for the ComponentChanged event.
changeService.ComponentChanged += new ComponentChangedEventHandler(this.OnComponentChanged);
}
private void OnComponentChanged(object sender, ComponentChangedEventArgs e)
{
// Displays changed component information on the console.
Console.WriteLine("Type of the component that has changed: "+e.Component.GetType().FullName);
Console.WriteLine("Name of the member of the component that has changed: "+e.Member.Name);
Console.WriteLine("Old value of the member: "+e.OldValue.ToString());
Console.WriteLine("New value of the member: "+e.NewValue.ToString());
}
Public Sub LinkComponentChangedEvent(ByVal changeService As IComponentChangeService)
' Registers an event handler for the ComponentChanged event.
AddHandler changeService.ComponentChanged, AddressOf Me.OnComponentChanged
End Sub
Private Sub OnComponentChanged(ByVal sender As Object, ByVal e As ComponentChangedEventArgs)
' Displays changed component information on the console.
Console.WriteLine(("Type of the component that has changed: " + e.Component.GetType().FullName))
Console.WriteLine(("Name of the member of the component that has changed: " + e.Member.Name))
Console.WriteLine(("Old value of the member: " + e.OldValue.ToString()))
Console.WriteLine(("New value of the member: " + e.NewValue.ToString()))
End Sub
備註
當你建立 ComponentChangedEventHandler 代理人時,你就能確定處理事件的方法。 要將事件與你的事件處理器關聯,請將該代理的實例加入事件中。 事件處理程序會在事件發生時被呼叫,除非你移除代理。 欲了解更多關於事件處理代表的資訊,請參閱 「處理與提升事件」。
在表單載入或卸載過程中不會發生 ComponentChanged 事件,因為預期這些操作期間會有變更。
擴充方法
| 名稱 | Description |
|---|---|
| GetMethodInfo(Delegate) |
取得一個代表指定代理所代表方法的物件。 |