Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di shaone
    Registrato dal
    Apr 2003
    Messaggi
    212

    [ASP.NET] Impostare evento onClick da script c#

    Ciao a tutti, ho un problema... Su un evento ItemDataBound eseguoo un controllo su un campo di database.. Se contiene valore zero mi visualizza un pulsante che mi esegue una certa funzione, se invece contiene valore 1 mi visualizza un pulsante che va ad un'altra funzione.
    Posso dire da codice al Button1 che l'evento onClick mi deve portare ad una certa funzione?
    Nella parte di codice sotto ho provato a utilizzare il parametro Click di Button ma non mi funziona...
    Mi aiutate??


    void R1_ItemDataBound(Object Sender, RepeaterItemEventArgs e)
    {
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == e.AlternatingItem) {

    string strItem = DataBinder.Eva(e.Item.DataItem , "bloccato").ToString();

    if(Convert.ToBoolean(strItem) == true)
    {
    ((Button)e.Item.FindControl("btnState")).Text = "Blocca";
    ((Button)e.Item.FindControl("btnState")).Click= sub1;
    }
    else
    {
    ((Button)e.Item.FindControl("btnState")).Text = "Sblocca";
    ((Button)e.Item.FindControl("btnState")).Command = sub2;
    }
    }
    }

  2. #2
    non ti conviene fare il controllo sul click del bottone (usando la buttoncolumn e l'evento della datagrid)?

  3. #3
    Utente di HTML.it L'avatar di shaone
    Registrato dal
    Apr 2003
    Messaggi
    212
    Non sono molto pratico.. cmq uso un repeater....
    e alla funzione richiamata dal pulsante dovrei passare un parametro che corrisponde ad un ID del database!
    Mi dai qualche consiglio su come faresti tu?

  4. #4
    anche sul repeater dovrebbe l'evento OnItemCommand (viene scatenato quando si preme un pulsante nell repeater) che ha parametri simili a quello che hai usato (onItemDataBound). Puoi fare gli stessi controlli e lancare la sub che ti serve:
    codice:
    void R1_ItemCommand(Object Sender, RepeaterCommandEventArgs e)
    {
      if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == e.AlternatingItem) { 
    
      string strItem = DataBinder.Eval(e.Item.DataItem , "bloccato").ToString(); 
    
      if(Convert.ToBoolean(strItem) == true) 
      { 
        sub1; 
      } 
      else 
      { 
       sub2; 
      } 
    } 
    
    }
    più o meno, lo butato giù a naso

  5. #5
    Utente di HTML.it L'avatar di shaone
    Registrato dal
    Apr 2003
    Messaggi
    212
    la sub deve partire al click sul pulsante!
    In base al risultato del controllo associare al click del Button l'uno o l'altra sub!

  6. #6
    Originariamente inviato da shaone
    la sub deve partire al click sul pulsante!
    In base al risultato del controllo associare al click del Button l'uno o l'altra sub!
    ma parte al click del pulsante
    In pratica il click sul pulsante richiama sempre quell'evento (passandoti la riga da cui è stato originato), e in base ai valori sulla riga richiami una o l'altra funzione...
    no so se sono stato spiegato

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 © 2026 vBulletin Solutions, Inc. All rights reserved.