Rchiamo bottone

lunedì 26 gennaio 2009 - 15.55

toniovigi Profilo | Expert

NELLA FORM1 al buttonclick:


Form3 ff = new Form3();
ff.Show();

NELLA FORM2 al buttonclick

Button nuovo = new Button();
Form1 xx = new Form1();
xx.Controls.Add(nuovo);//aggiungo il bottone alla form
nuovo.Show();//rendo visibile il bottone
nuovo.SetBounds(200,200, 66, 50); //setto le coordinate
nuovo.Text = "test"

praticamente voglio visualizzare al click della del bottone della FORM2 un bottone nella form1 ..ma nn riesco
e lo stesso nella form1 ricavare valori dalla FORM2,praticamente con l'intelissense nn riesco a vedere le variabili
Scusate ma non riesco a capire questo concetto

Grazie
Antonio

llamanna Profilo | Junior Member

Forse dovresti impostare la proprietà Modifiers ad un valore diverso da Private, del bottone di cui ti interessa impostare la visibilità.



Laura.
http://lauralamanna.blogspot.com/

Jeremy Profilo | Guru

Visto che è già il secondo post che invii sullo stesso argomento....stasera provo a scriverti un progettino di esempio e te lo mando(se non hai fretta)...
Non c'è niente di strano in quello che vuoi fare....è solo un discorso di visibilità delle variabili.

Ciao...

Jeremy Profilo | Guru

Eccomi

Questo è il codice del form 1
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { Form2 varForm2=new Form2(); button1.MouseDown += new MouseEventHandler(varForm2.button1_Click); } } }

Questo è il codice della form2

namespace WindowsFormsApplication1 { public partial class Form2 : Form { public Form2() { InitializeComponent(); } public void button1_Click(object sender, EventArgs e) { MessageBox.Show("Prova"); } } }

Facci sapere...
Ciao

toniovigi Profilo | Expert

,non riesco a lavorarci con questo concetto,però vorrei ribaltare tutto:P

Cioe,se lavoro direttamente nella Form1 le variabili della form2?Magari m viene + semplice

Nel senso al click button della mia form1 li dentro creo il lavoro che deve fare la form2
quindi
Form2 ff = new Form2();
ff.show();
qui poi uso le sue variabili che vedo se sono public

ma come faccio a richiamare l'evento click del bottone della form2??Voglio fare questo dentro la form1

Nel senso,

io clicco il bottone della Form1 e si apre la form2 ,poi voglio che al click del button della form2 m venga salvato tutto indelle variabili,ma voglio farlo dalla form1!quindi richiamare il click dalla form1

Jeremy Profilo | Guru

Quindi.....Una cosa così????

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Altrimenti...non capisco
Facci sapere....

ciao

toniovigi Profilo | Expert

ff.button1_Click; //questo è il nome assegnato alla sub che gestisce l'evento click del button 1

Si esatto questo e riferito al click del bottone della form2 che si apre, e lo voglio gestire nell'evento click della form1

Jeremy Profilo | Guru

Quindi???Siamo a posto???

toniovigi Profilo | Expert

Ma,direi di si,sto provando
cmq questo è il codice che sto realizzando :


if (e.ClickedItem.Text == "Nuovo Utente")
{
Form3 ff = new Form3();
ff.Show();

if ((ff.textBox1.Text == string.Empty) || (ff.textBox2.Text == string.Empty) || (ff.textBox3.Text == string.Empty) || (ff.textBox4.Text == string.Empty) || (ff.textBox5.Text == string.Empty) || (ff.textBox6.Text == string.Empty) || (ff.textBox7.Text == string.Empty))
MessageBox.Show("Alcuni campi vuoti,controllare");
else
{
//xconnettermi
OleDbConnection cnn = new OleDbConnection();
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\WindowsFormsApplication1\\WindowsFormsApplication1\\WindowsFormsApplication1\\ipet.mdb";
string query = "INSERT INTO ipet(COGNOME,NOME,MATRICOLA,TELEFONO,STANZA,SERVIZIO,ASSET_TAG_DESKTOP,ASSET_TAG_PORTATILE)VALUES ('" + textBox1.Text + "','" + textBox2.Text + "','" + ff.textBox3.Text + "','" + ff.textBox8.Text + "','" + ff.textBox4.Text + "','" + ff.textBox5.Text + "','" + ff.textBox6.Text + "','" + ff.textBox7.Text + "')";
OleDbCommand command = new OleDbCommand(query, cnn);
command.Connection.Open();
int x = command.ExecuteNonQuery();
cnn.Close();
MessageBox.Show("Aggiunto " + x.ToString() + "utente");


Button nuovo = new Button();

nuovo.Visible = true;
this.Controls.Add(nuovo);//aggiungo il bottone alla form
nuovo.Show(); //rendo visibile il bottone
nuovo.SetBounds(500, 500, 66, 50); //setto le coordinate
nuovo.Text = textBox1.Text + " " + textBox2.Text + " " + ff.textBox3.Text + " " + ff.textBox8.Text + " " + ff.textBox4.Text + " " + ff.textBox5.Text + " " + ff.textBox6.Text + " " + ff.textBox7.Text;
nuovo.BringToFront();//porta in primo piano

//SendToBack(); // porta in secondo piano
nuovo.BackColor = System.Drawing.Color.LightGreen;

this.Close();
}


Il mio problema e dirgli , come fare a prendere il click del bottone della form,

li come vedi nel codice fa un controllo su delle texbox se sono piene,e dopo se cosi fosse al click d un bottone mi deve salvare dei valori

ma nel click della form1 come faccio a gestire quel codice che ti ho scritto,quindi gestire il click di form2?
Tu dici basta fare ff.button1_click però in questo modo io prendo il codice dall'altra form,invece io voglio dirgli nel mio form1

"quando clicco il bottone 2 devi fare questo" e voglio farlo nel form1semplicemente perchè mi servono delle variabili
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5