Aiuto per Enaled Button

martedì 04 settembre 2007 - 20.44

z.cristiano Profilo | Newbie

Salve a tutti!
Ho un'altra difficoltà!!
Siccome ho fatto un codice in modo tale che un campo nome, chi non riempe o non inserisce niente, il pulsante CERCA rimane disabilitato (this.btnCerca.Enabled = false), invece chi riempe o inserisce qualche parole il pulsante diventa abilitato (this.btnCerca.Enabled = true)
E non ha funzionato!!!
Cosa ho sbagliato?

Quel codice l'ho messo su Form1 Load, non funziona, ho provato anche a mettere sul pulsante btnCerca Click, niente!!!

Aiutatemi!
E' da un'intero pomeriggio che cerco di risolvere il problema!
Grazie

Cristiano

alx_81 Profilo | Guru

>Salve a tutti!
Ciao!

>Ho un'altra difficoltà!!
>Siccome ho fatto un codice in modo tale che un campo nome, chi
>non riempe o non inserisce niente, il pulsante CERCA rimane disabilitato
>(this.btnCerca.Enabled = false), invece chi riempe o inserisce
>qualche parole il pulsante diventa abilitato (this.btnCerca.Enabled
>= true)
>E non ha funzionato!!!
>Cosa ho sbagliato?
>
>Quel codice l'ho messo su Form1 Load, non funziona, ho provato
>anche a mettere sul pulsante btnCerca Click, niente!!!
Si tratta di windows applications vero?

>
>Aiutatemi!
>E' da un'intero pomeriggio che cerco di risolvere il problema!
Tu vuoi che si disabiliti alla perdita del focus su ogni campo? al cambiamento del testo?


Alx81 =)

http://blogs.dotnethell.it/suxstellino

SSUPERPIPPO Profilo | Guru

>Salve a tutti!

Ciao

>Ho un'altra difficoltà!!
>Siccome ho fatto un codice in modo tale che un campo nome, chi non riempe o non inserisce niente, il pulsante CERCA rimane
>disabilitato (this.btnCerca.Enabled = false), invece chi riempe o inserisce qualche parole il pulsante diventa abilitato
>(this.btnCerca.Enabled = true)
>E non ha funzionato!!!
>Cosa ho sbagliato?

>Quel codice l'ho messo su Form1 Load, non funziona, ho provato anche a mettere sul pulsante btnCerca Click, niente!!!

>Aiutatemi!
>E' da un'intero pomeriggio che cerco di risolvere il problema!

Su Form1_Load devi inserire l'istruzinoe btnCerca.Enabled=false.
Affinchè il bottone si abiliti/disabiliti in base al contenuto della textbox, devi associare questo codice all'evento TextChanged della tua textbox:

Private Sub Textbox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Textbox1.TextChanged

if Textbox1.text="" then '<== Verifica se il campo è vuoto
btnCerca.Enabled=false '<== Se è vuoto allora disabilita il pulsante
else
btnCerca.Enabled=true '<== Se non è vuoto allora abilita il pulsante
end if

End Sub

>Grazie

>Cristiano

Di nulla, ciao

Alessandro

http://blogs.dotnethell.it/alebadalin

z.cristiano Profilo | Newbie

Ciao..
Grazie sei stato molto gentile, perchè ha funzionato!
Cmq, posso chiederti un'altro piccolissimo aiuto?

Siccome sto facendo un campo chiamato txtNascita e all'interno del campo ho messo 00/00/0000 e un label chiamato lblEta, com'è il codice in modo tale che, quando compilo la mia data di nascita 05/12/1979 e su label tira fuori la mia età che è 28 anni!

Ho messo questo codice, ma non ha funzionato

String txtData = txtNascita.Text;

int anno = int.Parse(txtData.Substring(6, 4));

int eta = DateTime.Now.Year - anno;

lblEta.Text = eta.ToString();

Poi, come si fa che, quando sul campo txtNascita che ci sono 00/00/0000 e quando metto la barretta di scrittura e iniziando a digitare i numeri, dopo aver messo due zeri mette automaticamete lo slash / poi dopo altri due zeri lo slash, senza che io digitassi lo slash!

E' possibile?

Ti aspetto e grazi mille!
Ciao ciao
Cristiano

SSUPERPIPPO Profilo | Guru

>Ciao..

Ciao

>Grazie sei stato molto gentile, perchè ha funzionato!

Di nulla...

>Siccome sto facendo un campo chiamato txtNascita e all'interno del campo ho messo 00/00/0000 e un label chiamato lblEta, com'è >il codice in modo tale che, quando compilo la mia data di nascita 05/12/1979 e su label tira fuori la mia età che è 28 anni!

>Ho messo questo codice, ma non ha funzionato

>String txtData = txtNascita.Text;

>int anno = int.Parse(txtData.Substring(6, 4));

>int eta = DateTime.Now.Year - anno;

>lblEta.Text = eta.ToString();

Devi convertire il campo TxtNascita in DateTime, poi estrarne l'anno e sottrarlo all'anno corrente.
Qui riporto il codice necessario:

Date DtData = CData(TxtData.Text)

Int anno = DtData.Year
lblEta.Text = DateTime.Now.Year - anno

Prova e fammi sapere se funziona

>Poi, come si fa che, quando sul campo txtNascita che ci sono 00/00/0000 e quando metto la barretta di scrittura e iniziando a >digitare i numeri, dopo aver messo due zeri mette automaticamete lo slash / poi dopo altri due zeri lo slash, senza che io digitassi >lo slash!

>E' possibile?

Devi usare al posto di una textbox una MaskedTextBox che ti consente di creare una maschera di inserimento fissa.

>Ti aspetto e grazi mille!
>Ciao ciao
>Cristiano

Ciao

Alessandro

http://blogs.dotnethell.it/alebadalin

alx_81 Profilo | Guru

> Date DtData = CData(TxtData.Text)
Per la conversione ti consiglio la Convert.ToDateTime

http://msdn2.microsoft.com/en-us/library/xhz1w05e.aspx

che è più Object Oriented e poi non usa funzioni del vecchio VB ma quelle del Framework demandandone la gestione.. è più standard, essendo CDate dedicata a Visual Basic (e VB.Net) solamente..

Alx81 =)

http://blogs.dotnethell.it/suxstellino

z.cristiano Profilo | Newbie

L'ho provato!
Niente...
Non ha funzionato!!!

SSUPERPIPPO Profilo | Guru

Prova così:

DateTime DtData = DateTime.Parse(TxtData.Text);
int anno = DtData.Year;
lblEta.Text = (DateTime.Now.Year - anno);

Ciao

Alessandro

http://blogs.dotnethell.it/alebadalin

z.cristiano Profilo | Newbie

Perdonami!
Non voglio farti scocciare!
Non ha funzionato!

Mi dice
"Impossibile convertire implicitamente il tuo INT in STRING

SSUPERPIPPO Profilo | Guru

Postami il codice ed evidenziami dove ti dà l'errore così verifico e ti faccio sapere.

Ciao

Alessandro

http://blogs.dotnethell.it/alebadalin

z.cristiano Profilo | Newbie

Ciao SuperPippo, ce l'ho fatta, avevo sbagliato prima, perchè quel codice che avevo inserito nel campo di nasciata e non andava e infatti, ho spostato quel codice in un'altro campo e ha funzionato!

Cmq, ho una difficoltà piccola per il campo LISTINBOX!
Allora, sono riuscito a far visualizzare i contenuti del database, ma non sono riuscito a farlo funzionare quando clicco due volte un nome visualizzato nel LISTINBOX e visualizzare i dettagli!

Esempio:

LISTINBOX c'è
Nome = Cristiano
Cognome = Prova
Con il mouse clicco due volte a quel nome e visualizzasse la maschera scritto

nome = Cristiano
Cognome = Prova
Indirizzo = etc
Cap = etc

Però la maschera di visualizzazione dettagli l'ho fatto, solo il codice sicuramente avrò sbagliato!
Nel database ho messo
id = Primary KEY e autocrement
Nome
cognome
indirizzo
cap

E' proprio il codice per visualizzare i numeri d'ID all'interno del private void listBox1_DoubleClick(object sender, EventArgs e)


Vi lascio il codice e magari puoi dare un'occhiata?
Grazie

private void VisualAdmin_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("Data Source=localhost;Initial Catalog=cristiano;Integrated Security=True");
SqlCommand cmq = new SqlCommand("SELECT * FROM accesso", conn);

conn.Open();

SqlDataReader leggi = cmq.ExecuteReader();

while (leggi.Read())
{
listBox1.Items.Add(leggi.GetInt32(leggi.GetOrdinal("id")) + "\t\t" + leggi.GetString(leggi.GetOrdinal("nome")) + "\t\t" + leggi.GetString(leggi.GetOrdinal("cognome")) + "\t\t" + leggi.GetString(leggi.GetOrdinal("tipo")));
}
leggi.Close();
conn.Close();
}

private void listBox1_DoubleClick(object sender, EventArgs e)
{
int controllo = int.Parse(listBox1.SelectedItem.ToString());
CercaAdmin frmCaption = new CercaAdmin();
frmCaption.setTipo(controllo.ToString());
frmCaption.Show();

}

Ti aspetto e grazie mille
Ciao ciao
Cristiano

SSUPERPIPPO Profilo | Guru

Ciao,

>private void listBox1_DoubleClick(object sender, EventArgs e)
>{
>int controllo = int.Parse(listBox1.SelectedItem.ToString());
>CercaAdmin frmCaption = new CercaAdmin();
>frmCaption.setTipo(controllo.ToString());
>frmCaption.Show();

>}

Se non ho capito male, facendo doppio click su ListBox1, istanzi FrmCaption, passandogli poi la voce selezionata.
Ma il codice per visualizzare i dati nella FrmCaption?

E' quello che devi postare!

Attendo, ciao

Ale

http://blogs.dotnethell.it/alebadalin

z.cristiano Profilo | Newbie

Sicuramente ho ti ho spiegato male...
Allora, il codice

private void listBox1_DoubleClick(object sender, EventArgs e)
{
int controllo = int.Parse(listBox1.SelectedItem.ToString());
CercaAdmin frmCaption = new CercaAdmin();
frmCaption.setTipo(controllo.ToString());
frmCaption.Show();

Come si fa a mettere, come posso spiegarti, che quando clicco due volte visualizzasse i dettagli del nome che ho selezionato...

Faccio un'esempio, riguarda il codice PHP (sono esperto)
while ($result = mysql_fetch_assoc($select)) {
echo result['id'];
}

E appare una lista di id e ciascun id metto un pulsante e all'interno del pulsante ci metto
<input type="button" name="prova" onclick="window.location.href='visualizza.php?id=<?php echo result['id']; ?> e nella pagina di dettagli ci metto
SELECT * FROM database WHERE id=$id

E quando clicco visualizza la pagina con i dettagli !
Esempio

1 cristiano
2 davide
3 barbara

se cliccassi barbara visualizza i suoi dettagli!

Lo stesso con C# con listinbox e doubleclick
Hai capito come vorrei??

FAmmi sapere..
Grazie mille
Ciao ciao
Cristiano

SSUPERPIPPO Profilo | Guru

A parte che non conosco PHP, sinceramente ho cercato di capire cosa ti serve ma non mi è ancora chiaro...

Tu vorresti che facendo doppio click sulla listbox aprisse una Forms che visualizzi i dettagli relativi all'elemento selezionato?

...



http://blogs.dotnethell.it/alebadalin

z.cristiano Profilo | Newbie

Si esatto!!
Come si fa? Come lo fai tu?
Grazie

SSUPERPIPPO Profilo | Guru

Normalmente passo alla Forms chiamata la chiave relativa alla selezione, poi nella Form, in particolare nell'evento Load della Form, creo un DataSet che andrò a popolare con una SELECT mirata in base alla chiave passata dalla Form chiamante.

Poi effettuo il binding del DataSet con i vari controlli del Form (o con un DataGridView) e il gioco è fatto.

Questa è la procedura da adottare, ora prova a buttar giù un pò di codice e se non riesci fammi sapere che provo ad aiutarti...

Ciao


Alessandro

http://blogs.dotnethell.it/alebadalin

z.cristiano Profilo | Newbie

Grazie...però mi confondo!!!
Però, non ho usato DataGridView, ma ho usato ListinBox..

Me lo fai per favore??

Grazie e perdonami!!!
Sono purtroppo ancora principiante!!!
Grazie mille
Cristiano
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