-4

我的表单中有一个生成随机字符串的函数。我想同时在消息框和文本框中显示此函数的结果。如何?我的功能应该是公开的还是私有的?

这是我的功能:

    public string GenerateRandomCode(int myLength)
    {
        string charPool = "ABCDEFGOPQRSTUVWXY1234567890ZabcdefghijklmHIJKLMNnopqrstuvwxyz";

        StringBuilder rs = new StringBuilder();

        Random random = new Random();
        for (int i = 0; i < myLength; i++)
        {
            rs.Append(charPool[(int)(random.NextDouble() * charPool.Length)]);
        }

        return rs.ToString();
    }
4

2 回答 2

2

据我了解,您希望文本框的文本也显示结果GenerateRandomCode并在 a 中显示该值MessageBox。你可以这样做:

int length = 10;
string msg;



private void button1_Click(object sender, EventArgs e)
{
    msg = GenerateRandomCode(length);
    textBox1.Text = msg;
    MessageBox.Show(msg);

}

Random random = new Random();

public string GenerateRandomCode(int length)
{
        string charPool = "ABCDEFGOPQRSTUVWXY1234567890ZabcdefghijklmHIJKLMNnopqrstuvwxyz";
        StringBuilder rs = new StringBuilder();
        /*Random random = new Random();*/

        for (int i = 0; i < length; i++)
        {
            rs.Append(charPool[(int)(random.NextDouble() * charPool.Length)]);
        }
        return rs.ToString();
 }
于 2013-07-13T01:55:29.657 回答
0

据我了解,您想在消息框和文本框中显示它。要在 中显示MessageBox,您将调用该方法并将返回值传递给MessageBox,如下所示:

string Result = GenerateRandomCode(6);
MessageBox(Result);

要在 a 中显示它,TextBox您可以简单地在您的表单上创建它(我不知道您使用的是什么类型的表单)并分配Result给它:

TextBox textResult = new TextBox();
textResult.Text = Result;

Private方法只能由拥有该方法的类调用。它们在不创建类对象的情况下使用。是的(!)你也可以用一种Private方法来完成这一切。

于 2013-07-13T01:59:05.923 回答