当前位置:编程学习 > C#/ASP.NET >>

输入法切换不成功的问题

我用.net+C#编写的系统里,textbox和textarea控件有时只能输入英文,按ctrl+Shift或ctrl+Space时,右下角的输入法图标会切换,但输入法面板没有显示,输入的也是英文,请问这是什么原因啊?这个问题有时出现有时不出现。 --------------------编程问答-------------------- 我遇到同样的问题?找高手解答 --------------------编程问答-------------------- 那是你电脑问题吧。。和你做的系统没关。 --------------------编程问答--------------------
引用 2 楼  的回复:
那是你电脑问题吧。。和你做的系统没关。

放出去给客户测试也存在这个问题,拼音,其它种类的五笔,反正除了英文可以大小写切换之外,其它什么输入法输入的都变英文 --------------------编程问答-------------------- 不会吧,没遇到过类似问题,重新弄各控件再试试 --------------------编程问答-------------------- 是这样的,
前台:
    <asp:TextBox ID="txt_MasterItemNo" runat="server" OnBlur=" return GetAutoItemNo(this)"
     CssClass="TxtShowAuto" Width="120px" TabIndex="10"></asp:TextBox>
javascript:
    function GetAutoItemNo(Control)
      {
          if(Control.value!="")
          {
          document.getElementById("<%=btn_AutoItemNo.ClientID %>").click(); 
          }else
          {
          document.getElementById("<%=txt_MasterItemNo.ClientID %>").select();
          } 
      }
后台:
    protected void btn_AutoItemNo_Click(object sender, EventArgs e)
    {
        if (txt_MasterItemNo.Text.Trim().Length > 0)
        {
            DataTable dt = mBll.GetMaterial(txt_MasterItemNo.Text.Trim());
            if (dt != null && dt.Rows.Count > 0)
            {
                if (mBll.JudgmentBomForNull(txt_MasterItemNo.Text.Trim()))
                {
                    MsgShow("空BOM不能建ECN!");
                    txt_MasterItemNo.Focus();
                    return;
                }
                txt_OldRev.Text = dt.Rows[0]["BomVersion"].ToString();
                txt_Description.Text = dt.Rows[0]["Description"].ToString();
                MasterItem = dt.Rows[0]["ItemID"].ToString();
                txt_Rev.Text = (Convert.ToInt32(dt.Rows[0]["BomVersion"]) + 1).ToString();
                txt_ChangeReasons.Focus();
            }
            else
            {
                MsgShow("货品编码不存在!");
                txt_MasterItemNo.Focus();
                return;
            }
        }
        else
        {
            txt_MasterItemNo.Focus();
            return;
        }
    } --------------------编程问答-------------------- 现在找到了一条不是很好的办法就是如下
直接修改后台调用JS

   protected void btn_AutoItemNo_Click(object sender, EventArgs e)
    {
        if (txt_MasterItemNo.Text.Trim().Length > 0)
        {
            DataTable dt = mBll.GetMaterial(txt_MasterItemNo.Text.Trim());
            if (dt != null && dt.Rows.Count > 0)
            {
                if (mBll.JudgmentBomForNull(txt_MasterItemNo.Text.Trim()))
                {
                    MsgShow("空BOM不能作ECN!");
                    txt_MasterItemNo.Focus();
                    return;
                }
                txt_OldRev.Text = dt.Rows[0]["BomVersion"].ToString();
                txt_Description.Text = dt.Rows[0]["Description"].ToString();
                MasterItem = dt.Rows[0]["ItemID"].ToString();
                txt_Rev.Text = (Convert.ToInt32(dt.Rows[0]["BomVersion"]) + 1).ToString();
              
                string SetFocus = @"<script>SetFocus()</script>";
                ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "SetFocus", SetFocus, false);
            }
            else
            {
                MsgShow("货品编码不存在!");
                txt_MasterItemNo.Focus();
                return;
            }
        }
        else
        {
            txt_MasterItemNo.Focus();
            return;
        }
    }
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,