• ベストアンサー

ASP.NET TextBox 入力制限

ASP.NETでテキストボックス内のIMEのモードを ひとつは全角カナ、ひとつは半角英数のような感じで プログラムで制御する方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • tkrn
  • ベストアンサー率53% (33/62)
回答No.4

こちらこそ言葉足らずだったでしょうか。 今までの回答は全て、Webフォーム(ASP.NET)での回答をしていますよ。 WindowsForm(Form1.vb)の話ではありません。 下記は、Webフォーム(ASP.NET)でのTextBox1(HTML上はINPUTタグ)にIME-MODEをオン、 TextBox2(HTML上はINPUTタグ)にIME-MODEを不可にした場合の方法です。 1).aspxファイルのデザインにてTextBox1、TextBox2を配置します。 2).aspx.vbファイルにページロードイベントにて下記のコードを記述すれば、IMEの制御が設定されます。 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load TextBox1.Style.Add("ime-mode", "active") TextBox2.Style.Add("ime-mode", "disabled ") End Sub それが今までの回答です。 もしかして想定しているイメージと異なるのでしょうか? サーバーサイドでのコーディングをせずに行いたいと言うことでしょうか? であれば、スタイルシートで制御させます。 1).aspxファイル内に書きのスタイルシートタグを埋め込みます。 <style type="text/css"> <!-- .ime-mode-active { ime-mode:active; } .ime-mode-disabled { ime-mode: disabled; } --> </style> 2). TextBox1のCssClassプロパティに"ime-mode-active"を設定します。 TextBox2のCssClassプロパティに"ime-mode-disabled"を設定します。 回答になっていますでしょうか?

aki05
質問者

お礼

ご回答有難う御座います!! 見事に思ったとおりに出来ました。 なにぶん初心者でして、書き込む場所を間違えておりました。 ページロードイベントに入れればよかったんですね・・。 情けない・・・。 本当に親切に最後まで有難う御座いました!

その他の回答 (3)

  • tkrn
  • ベストアンサー率53% (33/62)
回答No.3

> この方法はVBでしたので出来ませんでた。 > ASP.NETでの方法を探しております。 上記内容ですと、言葉の意味を間違えられておられるようですので説明します。 ASP.NETはアーキテクチャであり言語はありません。 VB.NETもASP.NETの1つです。 VB.NETでないということは、C#と言うことでしょうか? C#であれば、最後にセミコロンが付くだけの違いです。 TextBox1.Style.Add("ime-mode", "active"); TextBox2.Style.Add("ime-mode", "disabled ");

aki05
質問者

お礼

Windows Webです。

aki05
質問者

補足

こちらの説明不足、及び理解不足の為 せっかく回答頂いているにも関わらず ご迷惑をおかけして申し訳御座いません。 私が知りたいのは Windowsの方で→aspx.vb の方で Form1.vb の方ではないのです。 説明ベタでスミマセ・・・。

  • tkrn
  • ベストアンサー率53% (33/62)
回答No.2

#1です。 回答が不十分でしたので補足します。 > 全角カナ WebではWindowsFormのような細かなIME制御はできませんので「全角カナ」にする事ができません。 ANo1の回答の参考URLにある様に4つのモードの切り替えしか行えません。

  • tkrn
  • ベストアンサー率53% (33/62)
回答No.1

IMEのモードの制御でよいでしょうか? VB.NET2005の場合の記述方法です。 Textbox1.Style.Add("ime-mode", "active") Textbox2.Style.Add("ime-mode", "disabled ")

参考URL:
http://www.htmq.com/style/ime-mode.shtml
aki05
質問者

お礼

ご回答有難う御座いました。 この方法はVBでしたので出来ませんでた。 ASP.NETでの方法を探しております。 こちらもVBの際には参考にさせて頂きます。

関連するQ&A