我需要帮助显示C#的多个文本框?

时间:2013-09-24 05:34:56

标签: c# textbox

我正在尝试使用WinForms制作邮件标签程序,您可以在其中输入您的姓名,州,城市等,然后单击按钮,它会显示您在每个框中输入的所有文本并将其显示在一个标签上。我很接近但是当我运行我的程序时,这些单词之间没有空格。这是我的代码:

namespace Mail_Label_Program
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btnDisplay_Click(object sender, EventArgs e)
        {
            lblMessage.Text = txtFirst.Text + txtLast.Text;
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            //This closes the program.
            this.Close();
        }

        private void btnClear_Click(object sender, EventArgs e)
        {
            //This clears all textbox forms.
            txtFirst.Text = string.Empty;
            txtLast.Text = string.Empty;
            txtCity.Text = string.Empty;
            txtStreet.Text = string.Empty;
            txtState.Text = string.Empty;
            txtZip.Text = string.Empty;
        }
    }
}

4 个答案:

答案 0 :(得分:8)

替换它:

lblMessage.Text = txtFirst.Text + txtLast.Text;

有了这个:

lblMessage.Text = txtFirst.Text + " " + txtLast.Text;

如果有人输入领先/尾随空白,您可能会喜欢这样:

lblMessage.Text = trim(txtFirst.Text) + " " + (txtLast.Text);

答案 1 :(得分:0)

lblMessage.Text = txtFirst.Text + " " +  txtLast.Text;

答案 2 :(得分:0)

尝试

lblMessage.Text = string.Format("{0} {1}", txtFirst.Text, txtLast.Text);

您可以添加更多文字,例如

lblMessage.Text = string.Format("{0} {1} {2} {3}...", txtFirst.Text, txtLast.Text, text2, text3...);

答案 3 :(得分:0)

那是因为你连接字符串时没有在它们之间添加空格。您可以使用:

lblMessage.Text = String.Join(" ", txtFirst.Text, txtLast.Text);

相同的Join方法可用于任意数量的字段:

String.Join(" ", txtFirst.Text, txtLast.Text, txtCity.Text);

或者,您可以使用String.Format

string.Format("Name: {0} {1}, Address: {2}", txtFirst.Text, txtLast.Text, txtCity.Text);