【ASP.NET】日本語入力を禁止をするには(IMEモードの制御)

IMEモードの制御

日本語入力を禁止をするには

 * TextBoxのCssClass属性に、「ime-mode: disabled;」を指定する

他にも、色々あるので、以下『ime-modeプロパティで指定可能な値』を参照のこと。

■ 指定方法[1]

CSS

<style type="text/css">
<!--
.active {ime-mode: active;}
.disabled {ime-mode: disabled;}
-->
</style>

TextBox

<asp:TextBox id="Textbox1" runat="Server" CssClass="active" />
<asp:TextBox id="Textbox2" runat="Server" CssClass="disabled" />

■ 指定方法[2]コードビハインドでも指定

Me.Textbox1.Style.Add("ime-mode", "active")
Me.Textbox2.Style.Add("ime-mode", "disabled ")
http://oshiete.goo.ne.jp/qa/3106223.html

プロパティ

ime-modeプロパティで指定可能な値
http://www.htmq.com/style/ime-mode.shtml
 * auto:自動(デフォルト)。モード変更可能
 * active:日本語入力モード。モード変更可能
 * inactive:英数字入力モード。モード変更可能
 * disabled:英数字入力モード。モード変更不可

■ 使用上の注意

 * IE独自のスタイル・シート仕様を利用しているため、対象ブラウザはIE のバージョン5.x以降に限定される
 * 全角文字をコピーしてきて、該当欄にペーストすることは可能である
   (回避策としては、以下のFilteredTextBoxコントロールなどがある)
https://blogs.yahoo.co.jp/dk521123/26018455.html


関連記事

ASP.NET AJAX Control Toolkit (FilteredTextBoxコントロール編)

https://blogs.yahoo.co.jp/dk521123/26018455.html