我正在尝试为我们的人力资源部门创建一个简单的AD Gui,但是我已经挂了一些简单的东西。我们的电子邮件地址格式为firstname.lastname@organization.org。我有一个名字和姓氏的文本框,我想要使用firstname.lastname@organization.org自动填写电子邮件的文本框。我试过了
string FirstName = txtBoxFirstName.text;
string LastName = txtBoxLastName.text;
txtBoxEmail.Text = FirstName + "." + LastName + "@organization.org";
我也尝试不将它们设置为字符串,但这也不起作用。我甚至试图在"姓氏"之后填写电子邮件文本框。文本框通过放置
而失去焦点private void txtBoxLastName_Leave(object sender, System.EventArgs e)
{
txtBoxEmail.Text = txtBoxFirstName.text + "." + txtBoxLastName.text + "@organization.org";
}
我在Visual Studio Express 2013中的Windows窗体应用程序中进行此操作
更多信息,我对此非常陌生。我已经在网上做了很多搜索,似乎没有什么能完全符合我的使用案例,以至于它修复了它。在回答问题时,这是一个更完整的代码段:
private void txtBoxLastName_Leave(object sender, System.EventArgs e)
{
string FirstName = txtBoxFirstName.Text;
string LastName = txtBoxLastName.Text;
txtBoxEmail.Text = FirstName + "." + LastName + "@lgfcu.org";
}
这表明它们位于txtBoxLastName_Leave。
中答案 0 :(得分:1)
我将在黑暗中进行刺杀并假设您实际上没有将事件连接到TextBox。最简单的创建事件的方法:右键单击TextBox,单击属性,选择"闪电符号"在顶部,找到你想要的事件("离开"在这种情况下)并双击"离开"右边的列。这将连接事件(在designer.cs文件中查找+=
)并为您创建方法。
或者,如果您想手动连接事件,请添加此代码(在InitializeComponent()
之后):
txtBoxLastName.Leave += txtBoxLastName_Leave;
答案 1 :(得分:0)
文本框的属性是标题框,因此您需要将首字母大写:
string FirstName = txtBoxFirstName.Text;
string LastName = txtBoxLastName.Text;
或
txtBoxEmail.Text = txtBoxFirstName.Text + "." + txtBoxLastName.Text + "@organization.org";
答案 2 :(得分:0)
@MikeH得到了它;我搞砸了,没有调用我的函数填充电子邮件字段。我的代码很好,
private void populateEmail(object sender, System.EventArgs e)
{
string FirstName = txtBoxFirstName.Text;
string LastName = txtBoxLastName.Text;
txtBoxEmail.Text = FirstName + "." + LastName + "@organization.org";
}
但我不得不把它绑在一个事件上。我设置它时,当编辑FirstName或LastName中的文本时,它会填充电子邮件字段,如果有人在单击电子邮箱后返回到名称字段进行修改,则会阻止问题无法正确生成。