很简单啊
用SWITCH或者IF都可以啊

解决方案 »

  1.   

    其实就是响应一下TextBox的KeyPress事件:1.InitializeComponent中添加:
    this.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBox1_KeyPress);2.添加事件处理函数:
    private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
    {
    if( !e.Handled )
    {
    char keyChar = e.KeyChar;
    int idx = textBox1.SelectionStart; switch( keyChar )
    {
    case '0':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "零" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '1':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "壹" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '2':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "贰" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '3':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "叁" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '4':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "肆" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '5':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "伍" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '6':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "陆" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '7':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "柒" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '8':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "捌" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    }
    case '9':
    {
    textBox1.Text = textBox1.Text.Insert( idx, "玖" );
    textBox1.SelectionStart = textBox1.Text.Length;
    e.Handled = true;break;
    } }
    }
    }
      

  2.   

    太麻烦啦
    string[] a = new string[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};char keyChar = e.KeyChar;
    int n = Int32.Parse(new string(keyChar));
    textBox1.Text = a[n];
      

  3.   

    没太看清题,答的与你的要求有出入,应该这样,得到keyChar 后,先判断是否是'0'-'9'(可以根据ascii码来确定)