none
sl中如何实现输入法的切换? RRS feed

  • 问题

  • 一个TextBox用来接收磁条卡刷卡后的卡号,卡号中含有英文,当中文输入法打开的时候输入就会变成乱码。请问有什么方法在进入TextBox时关闭中文输入法?
    2016年4月28日 2:07

答案

  • 你好 升宝,

    根据Shuanghua Li 提供的方式,我创建了一个Silverlight是应用程序,发现我只需要在XAML 里设置nputMethod.IsInputMethodEnabled="False" 就可以禁用中文输入法了。

    我先把我电脑的输入法改成中文的,然后开始调试我的Silverlight应用程序,当我尝试着在TextBox里输入中文时发现,我的中文输入法已经被设置成只能输入英文了,而且即使我想手动切换,也切换不过来了。

    以下是我的XAML代码,在页面的后台,我没有做任何操作。

    <TextBox x:Name="textBox" HorizontalAlignment="Left" Height="23" Margin="76,79,0,0" 
                     TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="120"
                     InputMethod.IsInputMethodEnabled="False"/>

    Best Regards,
    Weiwei


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • 已标记为答案 升宝 2016年5月4日 9:14
    2016年5月4日 1:35
    版主

全部回复


  • 先设置一下输入法

    foreach (System.Windows.Forms.InputLanguage lang in System.Windows.Forms.InputLanguage.InstalledInputLanguages)
                   if (lang.LayoutName == "Chinese(Simplified) - Us Keyboard")
                   {
                       System.Windows.Forms.InputLanguage.CurrentInputLanguage = lang;
                       InputMethod.Current.ImeState = InputMethodState.On;
                   }
    


     或是 xaml

    InputMethod.IsInputMethodEnabled="True" InputLanguageManager.InputLanguage="Chinese(Simplified) - Us Keyboard"

    layout name 从系统输入法中获取名字,我的电脑中是Chinese(Simplified) - Us Keyboard

    2016年4月28日 2:26
  • 这是winform中能够使用的方法, sl中也行吗?
    2016年4月29日 2:03
  • 你好 升宝,

    根据Shuanghua Li 提供的方式,我创建了一个Silverlight是应用程序,发现我只需要在XAML 里设置nputMethod.IsInputMethodEnabled="False" 就可以禁用中文输入法了。

    我先把我电脑的输入法改成中文的,然后开始调试我的Silverlight应用程序,当我尝试着在TextBox里输入中文时发现,我的中文输入法已经被设置成只能输入英文了,而且即使我想手动切换,也切换不过来了。

    以下是我的XAML代码,在页面的后台,我没有做任何操作。

    <TextBox x:Name="textBox" HorizontalAlignment="Left" Height="23" Margin="76,79,0,0" 
                     TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="120"
                     InputMethod.IsInputMethodEnabled="False"/>

    Best Regards,
    Weiwei


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • 已标记为答案 升宝 2016年5月4日 9:14
    2016年5月4日 1:35
    版主
  • 谢谢版主, 提供的方法非常有效!
    2016年5月4日 9:14