InputLanguageChangedEventHandler 代理人
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
代表將處理InputLanguageChangedForm事件的方法。
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
事件的 來源。
一個 InputLanguageChangedEventArgs 包含事件資料的 。
範例
以下範例建立一個新事件 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 代理人時,你就能確定處理事件的方法。 要將事件與你的事件處理器關聯,請將該代理的實例加入事件中。 事件處理程序會在事件發生時被呼叫,除非你移除代理。
欲了解更多關於事件處理代表的資訊,請參閱 「處理與提升事件」。
擴充方法
| 名稱 | Description |
|---|---|
| GetMethodInfo(Delegate) |
取得一個代表指定代理所代表方法的物件。 |