Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    17

    [C#] Concatenare Variabile

    Ciao a tutti
    Linguagio c#

    Non so come fare un concatenamento di variabile,
    Mi spiego meglio io ho 10 variabile _ObjNome1 , _ObjNome2 .... _ObjNome10

    Voglio assegnare a queste variabili lo stesso Valore con il For


    codice:
    for (int x = 0; x <= 18; x++)
                {
                    ObjNome + x + .Items.AddRange(_ObjTemp);
                }
    Come posso fare?

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Non è possibile farlo in quel modo, nativamente, nel linguaggio.

    Suggerisco di usare un array o, tutt'al più, se proprio desideri "andare per nome", sfruttare una Hashtable.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    17
    Come faccio a Fare un array di Variabili?

    Non riesco proprio ad arrivarci...

    Provo a vedere anche l'Hashtable.

    Non Conosco...

    Sugerimenti?

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da Condor80
    Come faccio a Fare un array di Variabili?
    Non riesco proprio ad arrivarci...
    Non è una cosa che deve essere necessariamente intuita: se non conosci il linguaggio e la sintassi, consulti la documentazione relativa.

    Guarda qualche esempio qui.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    17
    Grazie ho visto l'esempio che mi hai indicato.

    Ma non capisco...

    L'esempio mi fa vedere come associare i valori di un array all'altro...

    Sempre in modo statico.

    Mentre io vorrei fare un for per poter associare Valori all'interno delle variabili.

    io ho 100 campi di testo, e tutti e 100 voglio associare un valore es. "ciao".

    i campi si chiamano _Tx1 , _Tx2 ecc.. fino a _Tx100.

    è possibile che in c# devo associare ad pgniuna manualmente?

    _Tx1 = "ciao";
    _Tx2 = "ciao";
    _Tx3 = "ciao";
    ....
    _Tx100 = "ciao";


    Non capisco...

  6. #6
    Invece di usare 100 variabili separate usa un array, come già suggeritoti:
    codice:
    string text[100]
    for(int i=0; i<100; i++)
    {
        text[i]="ciao";
    }
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    17
    Ripeto..

    Non posso usare un array..

    Almeno

    codice:
    public void GestDistinte_Load(object sender, System.EventArgs e)
    		{
    
                object[] _ObjTemp = ObjSQLCommand.ReadNomeCognome("TbAnaNome", "TbAnaCognome", "TabAnagrafica");
               
    
                _CmBxNomeCognome1.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome2.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome3.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome4.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome5.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome6.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome7.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome8.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome9.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome10.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome11.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome12.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome13.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome14.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome15.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome16.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome17.Items.AddRange(_ObjTemp);
                _CmBxNomeCognome18.Items.AddRange(_ObjTemp);
    
                _CmBxNomeCognDirigAccompa.Items.AddRange(ObjSQLCommand.ReadNomeCognome("TbAnaNome","TbAnaCognome","TabAnagrafica"));
                _CmBxNomeCognAllenat.Items.AddRange(ObjSQLCommand.ReadNomeCognome("TbAnaNome","TbAnaCognome","TabAnagrafica"));
                _CmBxNomeCognMassg.Items.AddRange(ObjSQLCommand.ReadNomeCognome("TbAnaNome","TbAnaCognome","TabAnagrafica"));
                _CmBxNomeCognGuardiLin.Items.AddRange(ObjSQLCommand.ReadNomeCognome("TbAnaNome","TbAnaCognome","TabAnagrafica"));
    
    
    
    		}

    Questo è il codice, e quello che voglio fare io è


    codice:
     
    
    for (int x = 0; x <= 18; x++)
                {
                   CmBxNomeCognome+[x].Items.AddRange(_ObjTemp);
                }
    Dove [x] sta per tutti i vari numeri che voglio cambiare in maniera dinamica, senza dover assegnare per ogni campo _CmBxNomeCognome + il Numero


    Questo intendo.

    e quindi non credo che posso usare l'array per richiamare le variabili, o per lo meno no con questa modalita.

    codice:
           string text[100]
           for(int i=0; i<100; i++)
           {
                text[i]="ciao";
           }
    Perchè facendo cosi non farei altro che riempire un'Array senza poter richiamare le variabili, che ipoteticamente metterei all'interno dell'array...


    O mi sbaglio?

  8. #8
    E allora crea un array di controlli:
    codice:
    private ComboBox cbxs[18]; //Variabile a livello di classe
    //In InitializeComponents
    foreach (ComboBox cbx In cbxs)
    {
        this.Add(cbx);
    }
    //Nella tua procedura
    //...
    foreach (ComboBox cbx In cbxs)
    {
        cbx.Items.AddRange(_ObjTemp);
    }
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #9
    Utente di HTML.it L'avatar di ganesha
    Registrato dal
    Jan 2003
    Messaggi
    357
    io ho lo stesso problema

    ho una situazione del genere:

    codice:
    public struct Setup
    {
        public SetupSchedule Pass1;
        public SetupSchedule Pass2;
        public SetupSchedule Pass3;
        public SetupSchedule Pass4;
        public SetupSchedule Pass5;
        public SetupSchedule Pass6;
        public SetupSchedule Pass7;
        public SetupSchedule Pass8;
        public SetupSchedule Pass9;
        public SetupSchedule Pass10;
        public SetupSchedule Pass11;
        public SetupSchedule Pass12;
        public SetupSchedule Pass13;
        public SetupSchedule Pass14;
        public SetupSchedule Pass15;
        public SetupSchedule Pass16;
        public SetupSchedule Pass17;
        public SetupSchedule Pass18;
    }
    
    public struct SetupSchedule
    {
        public int var1;
        public int var2;
        public int var3;
        public int var4;
        public int var5;
        public int var6;
    }
    con un ciclo for voglio leggere, che so, var1 e var2 di tutti i vari Passx
    non posso modificare la struct Setup per farla diventare un array!

    c'è un modo per generare il nome di una variabile?
    in altri linguaggi, tipo javascript, dovrebbe essere possibile (mi sembra tramite la funzione eval)...
    in C#?

    grazie

  10. #10
    Puoi usare la reflection per accedere ai membri di un tipo.
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.