我正在创建一个动态数组,并收到错误:
错误消息:无法将类型'string'转换为'string []'
代码是:
arrTeamMembers += tb.Text;
tb.Text包含诸如“Michael | Steve | Thomas | Jeff | Susan | Helen |”之类的值。
我正在尝试将值从tb.Text传递给arrTeamMembers。我不是要分割文本。 如何解决此错误?
答案 0 :(得分:10)
试试这个:
arrTeamMembers = tb.Text.Split('|');
答案 1 :(得分:8)
问题是,arrTeamMembers是一个字符串数组,而tb.Text只是一个字符串。您需要将tb.Text分配给数组中的索引。要执行此操作,请使用 indexer 属性,该属性看起来像紧跟在数组变量名称后面的方括号中的数字。括号中的数字是要设置值的数组中基于0的索引。
arrTeamMembers[0] += tb.Text;
答案 2 :(得分:5)
您不能只是将字符串添加到字符串数组中。
根据您实际尝试的操作,您可能需要这样:
string[] arrTeamMembers = new string[] { tb.Text };
或
arrTeamMembers[0] = tb.Text;
您可能希望改用List。
List<string> stringlist = new List<string>();
stringlist.Add(tb.Text);
答案 3 :(得分:1)
如果您尝试拆分文本框中的文本,那么
arrTeamMembers = tb.Text.Split( '|' );
如果这不起作用,您是否尝试将文本框附加到数组的末尾?
if ( arrTeamMembers == null )
arrTeamMembers = new string[0];
string[] temp = new string[arrTeamMembers.Length + 1];
Array.Copy( temp , 0, arrTeamMembers, 0, arrTeamMembers.Length );
temp[temp.Length - 1] = tb.Text;
arrTeamMembers = temp;