locked
LightSwitch | 複数の TextBox で Ime を Enabled = false にしたい RRS feed

  • 質問

  • TextBox に半角文字しか文字入力できないようにするには、
    以下のようにして出来ました。


    this.FindControl("Name").ControlAvailable += (object sender, ControlAvailableEventArgs e) =>
    {
    	InputMethod.SetIsInputMethodEnabled((TextBox)e.Control, false);
    };


    しかし、TextBox が沢山あるような場合、上記コードは楽ではなさそうです。





    TextBox が沢山ある場合、どのような方法があるのでしょう?

    • 編集済み custar 2012年2月28日 11:34
    2012年2月28日 7:21

回答

  • こんにちは。

    動的にやるのでなければ、カスタムコントロールで・・・

    • 回答としてマーク custar 2012年3月20日 17:16
    2012年3月1日 1:51

すべての返信

  • TextBox を一気に集めて
    foreach で SetIsInputMethodEnabled(, false) を行う、
    としたいところですが、どうやって一気に集められるだろう?

    dom + javascript (jquery) みたいに書けないもんですかねぇ。

    $("#container :text[type!=password]").each(function() {
    	$(this).css("ime-mode", "inactive");
    });

    • 編集済み custar 2012年2月28日 17:17
    2012年2月28日 12:02
  • こんにちは。

    動的にやるのでなければ、カスタムコントロールで・・・

    • 回答としてマーク custar 2012年3月20日 17:16
    2012年3月1日 1:51
  • CustomControl でやると、周囲の Control とスタイル (?) が変わり、違和感を感じています。

    CustomControl でも LightSwitch の見栄えが適用できたらいいのですが。

    2012年3月1日 2:23
  • テキストボックス自体を、カスタムコントロールにしてしまえば、コードがいらなくなると思ったのです。

    周囲とのスタイルが変わるという事は、確かめてみないとわからないですが・・・

    デフォだと変わらないですね。

    テーマとか変更すると影響あるんだろうか・・・

    ※カスタムコントロール => Extentionで作成したコントロールのことです。すみません。

    2012年3月1日 2:51
  • 2012年3月20日 17:17