0

我试图创建一种方法,该方法将在 MessageBox 中生成标题为“The Title”的“Adam”。此代码不起作用。这是因为 return 只能返回一个值,例如字符串名称吗?如果我删除标题选项,它工作正常。任何想法都会很棒。

    private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show(myMethod("Adam", "The Title"));
    }
    string myMethod(string name, string title)
    {
        return name, title;             
    }

}

}

4

2 回答 2

4

试试这个:

 private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show(myMethod("Adam", "The Title"));
    }
    string myMethod(string name, string title)
    {
        return name + " " + title;             
    }

编辑:在 texbox 上显示“标题”

  private void button1_Click(object sender, EventArgs e)
        {
           myMethod("Adam", "The Title");
        }
        void myMethod(string name, string title)
        {
             MessageBox.Show(name,title);       
        }
于 2012-11-16T12:01:45.213 回答
0

一个方法只能返回一个值。返回的值可以是复杂类型,因此您可以通过创建自己的数据类型(或使用内置类型)返回多个字符串:

class Message
{
   public string Title {get; set;}
   public string Message {get; set;}
}

使用这个你可以做到

private void button1_Click(object sender, EventArgs e)
{
    var message = MyMethod("Title", "Message");
    MessageBox.Show(message.Title, message.Message);
}

Message myMethod(string name, string title)
{
    return new Message{Title = title, Message = name};             
}

鉴于这种情况,这是毫无意义的,但myMethod可以对参数进行查找或操作,以生成返回的消息。

另一种方法是,正如这里已经讨论过的,让myMethod处理消息框的显示。

private void button1_Click(object sender, EventArgs e)
{
    myMethod("Adam", "The Title");
}
void myMethod(string name, string title)
{
    MessageBox.Show(name,title);       
}
于 2012-11-16T12:33:58.547 回答