2017-10-01 8 views
0

私はC#で新しく、ウィンドウフォームを使用してテキストボックスに配列を表示しようとしています。テキストボックス内の配列C#

問題は、私がコマンドtxtTela.Text = tela.ToString();を渡すと、プログラムは正常にコンパイルされますが、テキストボックスの結果は、表示したい文字列ではなく、"System.String[]"です。テキストボックスに印刷されているものの

画像:https://snag.gy/L34bfM.jpg

public String[] comboPalavra; 
    public String []tela = new String[1]; 

    public Form1() 
    { 

     InitializeComponent(); 
     comboPalavra = embaralhaPalavra.CarregaPalavra();//Recebe uma palavra e uma dica 


     //MessageBox.Show(comboPalavra[0]); 

     foreach(char element in comboPalavra[0]) 
     { 
      this.tela[0] = tela + "#"; 
     } 

     txtTela.Text = tela.ToString(); 
     txtDica.Text = comboPalavra[1].ToString(); 
    } 

答えて

2

あなたの文字列配列は、単一の文字列に変換する必要があります。これはstring.Join()で行うことができます。

textBox.Text = string.Join(separator, stringArray); 

又は

textBox.Text = string.Join(separator, stringArray.Select(x => x.ToString())); 
+0

ありがとう!!しかし、私はこの記事で見たように、これを試しました。https://stackoverflow.com/questions/15659409/how-do-you-display-a-string-array-in-a-text-box ... –

+0

@ dev-johnあなたの文字列を見せてください。動作しないジョインコード。 – krzysztofla

+0

txtTela.Text = string.Join(separator、tela); –

1

又は(System.Linqの使用)LINQ式を有する:

textBox.Text =stringArray.Aggregate((x, y) => x + separator + y); 
0

、文字列の配列として 'テラ' を定義し、(.ToStringを適用) -methodをその配列オブジェクトに直接渡すことができます。これが原因で終了しました。System.String []

public String []tela = new String[1]; 
txtTela.Text = tela.ToString(); 

特定の要素を印刷するには、印刷する要素を定義する必要があります。

txtTela.Text = tela[0]; 
関連する問題