Questione : Problema che ottiene valore selezionato di un CheckBoxList (utilizzato in un gridview)

Ho un gridview. Ogni fila ha una lista della scatola di controllo che è limitata ad un datasource. Ogni volta che il uncheck/controllo di I un articolo io vuole fare funzionare selectedindexchanged per fare un certo roba della base di dati. Per qualche motivo, anche quando la I UNCHECK la scatola di controllo selezionata è sempre allineare. Dell'idea perché? il

ha protetto il
del cblFolders_SelectedIndexChanged (mittente di ByVal come oggetto, ByVal e come System.EventArgs) oscura il cbl come nuovo
del cbl di CheckBoxList
= del
di l$tipo C (mittente, CheckBoxList) se cbl.SelectedItem.Selected allora '
SEMPRE ALLINEARE class= del

Risposta : Problema che ottiene valore selezionato di un CheckBoxList (utilizzato in un gridview)

Dopo che cosa è coperto finora la risposta è… ci non è abbastanza informazioni su come state ponendo questo fino a vedete che cosa è errato…

Questa valutazione, [se cbl.SelectedItem.Selected allora], provocherà 2 condizioni possibili:
1) Allineare
2) Errore perché cbl.SelectedItem è niente
*** Il relativo kindof stupido perché non sarà mai FALSO. Affinchè sia FALSO l'articolo non è selezionato e quindi non può essere “un SelectedItem„. Se questo non ha significato allora dovrete semplicemente giocare con esso alcuno per vedere che cosa significo.

L'unico senso è ALLINEARE dopo che uncheck tutti gli articoli in una fila siete se qualcosa presto nel ciclo di vita della pagina stia interessandolo prima che otteniamo all'evento di SelectedIndexChanged o ci sia un problema con l'esecuzione databinding per il checkboxlist.

Ho un un piccolo campione che funziona. È codice che pigro conosco, ma fa esattamente e dimostra che cosa state provando a fare e che cosa ho dichiarato sopra. Dovete collegamento i vostri propri dati ad esso, ma qualche cosa basterà. Esposizione malata il relativo di dati allegato per alla mia dimostrazione.

Prevedo se fate una versione semplificata di che cosa state facendolo calcolerete fuori che cosa è errato, o almeno avrete qualcosa che possiate inviare qui che possiamo lavorare con per vedere che cosa è errato. Direi l'esposizione il gridview e databinding, ma l'altro codice potrebbe interessare pure. Così realmente ho suggerito di fare una versione fittizia per la prova. Le mie congetture sono:

1) Re-sta legando accendere (so che già avete considerato questo).
2) State iniettando il checkboxlist come controllo dinamico nel gridview e questa esecuzione sta causando il wonkiness.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
**** DELLA PAGINA DEL **** ASPX
<>







    Griglia Proto


    
		SelectedIndex1:
Errore dell'esposizione:
CODICE DEL **** ASPX.VB DIETRO **** Importazioni System.Data.SqlClient _Default parziale del codice categoria Eredita System.Web.UI.Page connStr pubblico di Const come stringa = “dati Source=. \ SQLEXPRESS; Security=True Integrated„ Page_Load secondario protettivo (mittente di ByVal come oggetto, ByVal e come System.EventArgs) tratta Me.Load Se non IsPostBack allora BindGrid () Concluder se Concludere il sommergibile BindGrid secondario riservato () Connett. fiochi come nuovo SqlConnection (connStr) Cmd fioco come nuovo SqlCommand (“SELEZIONARE * A PARTIRE da DevTable„, i connett.) connett. Si aprono () Dott. fioco come SqlDataReader = cmd.ExecuteReader GridView1.DataSource = Dott. GridView1.DataBind () Dott. Chiuder () connett. Si chiudono () connett. Dispongono () Sommergibile dell'estremità GridView1_RowDataBound secondario protettivo (mittente di ByVal come oggetto, ByVal e come System.Web.UI.WebControls.GridViewRowEventArgs) tratta GridView1.RowDataBound Se e.Row.RowType = DataControlRowType.DataRow allora Cbl fioco come CheckBoxList = e.Row.FindControl (“cblBound„) Connett. fiochi come nuovo SqlConnection (connStr) Cmd fioco come nuovo SqlCommand (“testID PRESCELTO, fName da DevTable„, connett.) connett. Si aprono () Dott. fioco come SqlDataReader = cmd.ExecuteReader cbl.DataSource = Dott. cbl.DataValueField = “testID„ cbl.DataTextField = “fName„ cbl.DataBind () Dott. Chiuder () connett. Si chiudono () connett. Dispongono () Concluder se Concludere il sommergibile Secondario protettivo cblBound_SelectedIndexChanged (mittente di ByVal come oggetto, ByVal e come System.EventArgs) Cbl fioco come CheckBoxList = DirectCast (mittente, CheckBoxList) Se cbl.SelectedItem allora è niente SelectedIndex1.Text = “niente ha selezionato„ Altrimenti SelectedIndex1.Text = cbl.SelectedItem.Selected Concluder se Prova Se cbl.SelectedItem.Selected allora lblError.Text = cbl.SelectedItem.Text Concluder se Interferire ex come eccezione lblError.Text = ex. Messaggio Prova di conclusione Sommergibile dell'estremità Codice categoria dell'estremità **** SEMPLICE DELLA TABELLA DI BASE DI DATI DEL ***** testID fName lName nName sDate 1 POSIZIONE DI SEGNALE MINIMO del bblast di scoppio della fattura POSIZIONE DI SEGNALE MINIMO del jjamaih del jamaih di 2 jason POSIZIONE DI SEGNALE MINIMO del kbak del bak dei 3 kang POSIZIONE DI SEGNALE MINIMO del rrabbit del coniglio di 4 Roger POSIZIONE DI SEGNALE MINIMO NULLA NULLA NULLA NULLA
Altre soluzioni  
 
programming4us programming4us