Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] Share jagged Array
Forum - C# / VB.NET - [C#] Share jagged Array

Avatar
fosforo (Normal User)
Expert


Messaggi: 264
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 11:43
Lunedì, 06/11/2017
Ciao
In una classe esterna ho creato e popolato una Jagged Array.
Vorrei condividere i valori dell'Array dalla classe a una Form per popolare una textBox.

Ho tentato cosi ma senza risultati.

Nella Classe esterna:
public string[][] LVL
        {
             get {  return MiaJagged; }

        }


Nella Form:
ClasseEsterna CEXT= new ClasseEsterna ();
TextBox test= new TextBox();
test.text = CEXT.LVL[0][0];



Ultima modifica effettuata da fosforo il 06/11/2017 alle 11:53


Scusate per la figuraccia.
PM Quote
Avatar
Mikelius (Member)
Pro


Messaggi: 95
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 12:48
Lunedì, 06/11/2017
Salve, non sono molto esperto di c#, ma perche non usi:

Codice sorgente - presumibilmente Plain Text

  1. TextBox.AppendText(Stringa.Array+Enviroment.Newline() )



La textBox è impostata su multiline?


Ultima modifica effettuata da Mikelius il 06/11/2017 alle 12:51


"Io ne ho viste cose che voi umani non potreste immaginarvi...."
PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 264
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 12:56
Lunedì, 06/11/2017
Ciao e grazie per l'aiuto.

La jagged array contiene pochi dati per ogni cella.
La TextBox di conseguenza è a riga singola.

Faccio un esempio:
la posizione della Jagged [0][0] contiene un nome, esempio Paolo.

Come faccio a stampare nella TextBox questo dato?

Sinceramente il tuo esempio nn l'ho capito.


Scusate per la figuraccia.
PM Quote
Avatar
Mikelius (Member)
Pro


Messaggi: 95
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 13:29
Lunedì, 06/11/2017
il metodo AppendText non fa altro che aggiungere il testo alla tua texBox . il tuo cancella il vecchio dato scritto.
Credevo ti servissero tutti i dati nella TextBox... con l'enviroment.newline andavo su una nuova linea ad ogni dato..
(per una questione di bellezza visiva)

Prova ad usare il metodo Append per inserire i valori (prima però usa TextBox.Clear() per pulire la text box, altrimenti ti ritroverai sempre i vecchi valori) e posta il codice che usi, altrimenti si va aa tentoni..

Ultima modifica effettuata da Mikelius il 06/11/2017 alle 13:30


"Io ne ho viste cose che voi umani non potreste immaginarvi...."
PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 264
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 14:14
Lunedì, 06/11/2017
Il mio problema non è la TextBox ma come accedere all'Array dalla form.


Scusate per la figuraccia.
PM Quote
Avatar
Mikelius (Member)
Pro


Messaggi: 95
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 14:33
Lunedì, 06/11/2017
Posta il codice.


"Io ne ho viste cose che voi umani non potreste immaginarvi...."
PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 264
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 14:54
Lunedì, 06/11/2017
E' una riduzione del codice scritto:

Nella Classe esterna:

public string[][] MyArray=  null;  
string[][] MyArray= new string[3][];
MyArray[0][0] = ("Paolo");
MyArray[0][1] = ("Carlo");
MyArray[0][2] = ("Ciro");
MyArray[1][0] = ("Milano");
MyArray[1][1] = ("Parma");
MyArray[1][2] = ("Verona");
MyArray[2][0] = ("Lombardia");
MyArray[2][1] = ("Emilia");
MyArray[2][2] = ("Veneto");


Nella Form:

TextBox Nomi= new TextBox();
Nomi.Text = ((ClasseEsterna.MyArray[0][0]));

Teoricamente la TextBox dovrebbe stampare Paolo.
Ho provato anche mettendo nella classe esterna:

public string[][] BB
        {
            get { return MyArray; }
        }

Ma nulla di buono:noway:

In poche parole, come faccio ad accedere ai valori dell'Array dalla Form?

Ultima modifica effettuata da fosforo il 06/11/2017 alle 15:48


Scusate per la figuraccia.
PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 264
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 16:44
Lunedì, 06/11/2017
Era cosi semplice....
Si fa come se fosse un passaggio di variabili comune....

Scisatemi.:(


Scusate per la figuraccia.
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1703
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 18:26
Lunedì, 06/11/2017
oppure ancora più semplice

Codice sorgente - presumibilmente Plain Text

  1. Nomi.text = String.Format("{0} e {1}",MyArray[0][0],MyArray[2][1]);



Risultato:

Paolo e Emilia

Con string format eviti di avere errori nel caso nella stringa fosse presente un numero


PM Quote