C#等待用户输入继续功能

时间:2017-01-12 11:54:45

标签: c# function dialog panel

我有一个功能,我需要用户输入来做A或B.

if(userinput == "Confirm"){A} else {B}

我的问题:我是否必须使用对话框,或者我可以使用带有消息和两个按钮的面板吗?

我拥有:带有文本框(消息)和两个按钮(确认,取消)的面板

如果是,我怎么能做到这一点? 如果不是,我如何使用对话框? (只是指出一个链接)

(如果你到目前为止还没有得到我的观点,请继续阅读)

  

1)用户填写表格

     

2)如果该字段在数据库上不是唯一的,那么它只是被验证为与其兼容

     

3)但是,如果该字段是唯一的,或者是主键,它会在数据库中搜索与其相关的信息

     

4)获取该信息后,它会检查是否为该英特尔构建的任何其他字段已填充或为空

     

5)如果该表单中包含用户已插入的任何内容,系统必须询问它是否使用刚刚获得的英特尔更新表单,或者是否仅填充空字段,并保留那些不是空。

     

6)该功能继续验证

2 个答案:

答案 0 :(得分:0)

您可以使用表单并管理DialogResult值。为此,您必须创建一个您希望用户输入的新表单。然后以这种方式管理:

YourForm form = new YourForm();

if(form.ShowDialog() == DialogResult.OK)
{
    MessageBox.Show("This is the input" + form.textBox1.Text)
}

此处提供更多帮助:https://msdn.microsoft.com/es-es/library/c7ykbedk(v=vs.110).aspx

答案 1 :(得分:0)

我们假设您的新表单中有两个按钮:

Button okButton = new Button();
Button cancelButton = new Button();

为他们分配点击事件:

okButton.Click += OnClick;
cancelButton.Click += OnClick;

然后在OnClick()方法内:

void OnClick(object sender, EventArgs e)
{
    if(sender == okButton)
        this.DialogResult = DialogResult.Ok;

    this.Close();
}

现在您可以使用它:

if(new MeForm().ShowDialog() == DialogResult.OK)
{
    // user clicked OK
}
else
{
    // user clicked cancel
}