1

基本的に、仕事でメモを取るのに役立つ簡単なプログラムを作成しています。1 行textbox1と複数行がありtextbox2ます。

に何でも入力できるようにしたいのでtextbox1、「Enter」を押すと、の最初の行に表示されtextbox2ます。どんな助けでも大歓迎です。

    public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

    }

    private void textbox1_TextChanged(object sender, EventArgs e)
    {

    }

    private void textBox2_TextChanged(object sender, EventArgs e)
    {

    }
}
4

3 に答える 3

5
//in form constructor, or InitializeComponent method
textBox1.Validated += DoValidateTextBox;



//in another place of your class
private void DoValidateTextBox(object sender, EvenArgs e) {
  textBox2.Text =  ((TextBox)sender).Text + Environment.NewLine + textBox2.Text;
}
于 2013-01-31T07:07:00.957 に答える
3

それはあなたが最終的な結果になりたいものに依存します。2番目のテキストボックスの最初の行を最初の行と等しくするだけの場合は、次のようにします。

void myEvent()
{
    textbox2.Text = textbox1.Text;
}

ただし、ボタンを押すたびにtextbox1にあるものをtextbox2に追加する場合は、ListViewを使用することをお勧めします。

void myEvent()
{
   myListView.Items.add(textbox1.Text);
}

ただし、特にテキストボックスが必要な場合(データは常に最初の行に追加されます):

void myEvent() 
{ 
   textbox2.Text = textbox1.Text + Environment.NewLine + textbox2.Text; 
}
于 2013-01-31T07:19:21.277 に答える
3

これはうまくいくはずです:

private void textBox1_KeyDown(object sender, KeyEventArgs e) // Keydown event in Textbox1
{
  if (e.KeyCode == Keys.Enter) // Add text to TextBox2 on press Enter
  {
    textBox2.Text += textBox1.Text;
    textBox2.Text+= "\r\n"; // Add newline
    textBox1.Text = string.Empty; // Empty Textbox1
    textBox1.Focus(); // Set focus on Textbox1
  }
}

テキスト ボックスの最初の行にテキストを追加する場合は、上記のコードを次のように置き換えます。

textBox2.Text = textBox1.Text + "\r\n" + textBox2.Text;
于 2013-01-31T07:14:15.250 に答える