InputLanguageChangedEventHandler 代理人
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
代表將處理 InputLanguageChanged 之 Form 事件的方法。
public delegate void InputLanguageChangedEventHandler(System::Object ^ sender, InputLanguageChangedEventArgs ^ e);
public delegate void InputLanguageChangedEventHandler(object sender, InputLanguageChangedEventArgs e);
public delegate void InputLanguageChangedEventHandler(object? sender, InputLanguageChangedEventArgs e);
type InputLanguageChangedEventHandler = delegate of obj * InputLanguageChangedEventArgs -> unit
Public Delegate Sub InputLanguageChangedEventHandler(sender As Object, e As InputLanguageChangedEventArgs)
參數
- sender
- Object
事件的來源。
範例
下列範例會建立新的 Form ,並將事件處理常式附加至 InputLanguageChanged 事件。 當輸入語言變更為日文時,此事件會變更 IMEmode
。
#using <System.Data.dll>
#using <System.Windows.Forms.dll>
#using <System.dll>
#using <System.Drawing.dll>
using namespace System;
using namespace System::Drawing;
using namespace System::Collections;
using namespace System::ComponentModel;
using namespace System::Windows::Forms;
using namespace System::Data;
public ref class Form1: public System::Windows::Forms::Form
{
private:
RichTextBox^ rtb;
public:
Form1()
{
rtb = gcnew RichTextBox;
this->Controls->Add( rtb );
rtb->Dock = DockStyle::Fill;
this->InputLanguageChanged += gcnew InputLanguageChangedEventHandler( this, &Form1::languageChange );
}
private:
void languageChange( Object^ /*sender*/, InputLanguageChangedEventArgs^ e )
{
// If the input language is Japanese.
// set the initial IMEMode to Katakana.
if ( e->InputLanguage->Culture->TwoLetterISOLanguageName->Equals( "ja" ) )
{
rtb->ImeMode = System::Windows::Forms::ImeMode::Katakana;
}
}
};
int main()
{
Application::Run( gcnew Form1 );
}
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
public class Form1 : System.Windows.Forms.Form
{
RichTextBox rtb = new RichTextBox();
public Form1()
{
this.Controls.Add(rtb);
rtb.Dock = DockStyle.Fill;
this.InputLanguageChanged += new InputLanguageChangedEventHandler(languageChange);
}
private void languageChange(Object sender, InputLanguageChangedEventArgs e)
{
// If the input language is Japanese.
// set the initial IMEMode to Katakana.
if (e.InputLanguage.Culture.TwoLetterISOLanguageName.Equals("ja"))
{
rtb.ImeMode = System.Windows.Forms.ImeMode.Katakana;
}
}
public static void Main(string[] args)
{
Application.Run(new Form1());
}
}
Imports System.Drawing
Imports System.Collections
Imports System.ComponentModel
Imports System.Windows.Forms
Imports System.Data
Public Class Form1
Inherits System.Windows.Forms.Form
Dim WithEvents rtb As New RichTextBox()
Public Sub New()
MyBase.New()
Me.Controls.Add(rtb)
rtb.Dock = DockStyle.Fill
End Sub
Private Sub languageChange( _
ByVal sender As Object, _
ByVal e As InputLanguageChangedEventArgs _
) Handles MyBase.InputLanguageChanged
' If the input language is Japanese.
' set the initial IMEMode to Katakana.
If e.InputLanguage.Culture.TwoLetterISOLanguageName.Equals("ja") = True Then
rtb.ImeMode = System.Windows.Forms.ImeMode.Katakana
End If
End Sub
Public Shared Sub Main()
Application.Run(new Form1())
End Sub
End Class
備註
當您建立 InputLanguageChangedEventHandler 委派 (Delegate) 時,就可以識別即將處理此事件的方法。 若要使事件與您的事件處理常式產生關聯,請將委派的執行個體 (Instance) 加入至事件。 除非您移除委派,否則每當事件發生時就會呼叫事件處理常式。
如需事件處理常式委派的詳細資訊,請參閱 處理和引發事件。
擴充方法
GetMethodInfo(Delegate) |
取得表示特定委派所代表之方法的物件。 |