如何使用TextBox更改输入数组?

时间:2016-11-09 11:56:38

标签: c#

如何更改数组以在TextBox'e中输入所需的格式? 这是代码:

private static readonly string[] Extensions = new string[] { textbox1.text };

在{}的字段中必须更改为文本框!

在我想要的文本框中,我可以使用逗号介绍这些格式! TXT,PNG,ICO,DLL

或者更好地使用List?

 List<string> mylist = new List<string>() { "*.txt" };

enter image description here

希望我能输入我想要的格式不在代码{“* .txt”}中!和TextBox'e。

P.S:

 private static string[] Extensions = new string[] { "*.txt" };
    //public static string[] Extensions;
    public static void extractExtensions(string s)
    {
        Extensions = s.Split(',');
    }   

如何将值分配给string [] {“of textbox”};

2 个答案:

答案 0 :(得分:4)

要理解你真正遇到的问题并不容易,但试试这个:

textbox1.Text = String.Join(",", Extensions);

反向将来自文本框 - &gt;阵列:

string [] singleExtensions = textbox1.Text.Split(',');

这将为您提供由,分隔的所有元素,并将它们转储到数组中。

或者如果您更喜欢列表:

List<string> singleExtensions = textbox1.Text.Split(',').ToList();

修改

好的,因为你不想发布更多代码,我猜错了:

我想你有一个Windows窗体应用程序和TextBox中的Form1。 您还应该有一个要在其中使用的类的实例。 我们假设该类被称为MyClass,它有一个扩展数组,以及一个方法extractExtensions来提取扩展:

public class MyClass
{
    string [] singleExtensions;

    public void extractExtensions(string s)
    {
        singleExtensions = s.Split(',');

    }    
}


public partial class Form1 : Form
{ 
    // instance of class:
    MyClass _myClass = new MyClass();
}

Form您想要调用班级方法的某个位置并传递文本框的内容,如下所示:

_myClass.extractExtensions(textbox1.Text);

和voilà。

编辑2:

例如,您想要通过单击按钮来提取扩展,然后在btn1_Click事件中调用此方法:

public partial class Form1 : Form
{ 
    // instance of class:
    MyClass _myClass = new MyClass();


    private void btn1_Click(object sender, EventArgs e)
    {
        _myClass.extractExtensions(textbox1.Text);
    }
}

如果您在帖子中使用此方法static,则可以这样称呼它:

MyClass.extractExtensions(textbox1.Text);

答案 1 :(得分:0)

假设您有所需扩展名列表

  var extensions = new List<string> { ".txt", ".png", ".dll" };

您可以加入项目以撰写字符串并在文本框中显示

  txtExtensions.Text = string.Join(",", extensions);