none
controllare checkedListBox in form1 RRS feed

  • Domanda

  • salve a tutti, stò tentando di imparare il visual c# qualcuno mi aiuta a risolvere il seguente problema ...

    con textBox hò il seguente messaggio di errore  :  textBox1  non esiste nel contesto corrente

    hò risolto cosi:

    (Application.OpenForms["Form1"] as Form1).Controls["textBox3"].Text = string.Join(" ", list); //scrive in  texbox1 che si trova in form1 il contenuto di list...

    con checkedListBox1 ho il medesimo problema da risolvere.... (controllare checkedListBox1 che si trova in form1 da una classe nuova  )

    foreach (int indexChecked in  checkedListBox1.CheckedIndices)  //controlla le caselle cliccate   (messaggio di errore: checkedListBox1 non esiste nel contesto corrente)

    come posso controllare le caselle cliccate in checkedListBox1  che si trova nel form1?

    se scrivo :   foreach (int indexChecked in  checkedListBox1.CheckedIndices)  dentro form1.cs funziona tutto..

    ...grazie

    lunedì 24 giugno 2013 08:50

Risposte

  • textBox3, così come checkedListBox1, sono oggetti privati dichiarati nella classe Form1.cs, quindi per utilizzarli in una classe esterna devi passare a quest'ultima un riferimento ad essi.

    Supponendo che tu istanzi tale classe all'interno di Form1.cs, la cosa più semplice è passargli gli oggetti textBox3 e checkedListBox1 nel costruttore, per poi salvarli in campi privati, così che tu li possa usare ogni volta che ne hai bisogno.


    Marco Minerva [MCPD]
    Blog: http://marcominerva.wordpress.com
    Twitter: @marcominerva

    • Proposto come risposta Irina Turcu venerdì 12 luglio 2013 10:39
    • Contrassegnato come risposta Irina Turcu martedì 16 luglio 2013 14:26
    lunedì 24 giugno 2013 08:56
    Moderatore