Pytanie : Formview - System.NullReference Wyjątek gdy używać findcontrol

I mieć formularzowy widok z redagować rzecz, wszywka rzecz i rzecz szablon.  I kodować przedmiot datasource wydarzenie the parametr od the formview.  I dostawać the nieobowiązujący odniesienie wyjątek z the znalezisko kontrolny metoda the formview.  I nigdy używać wszystkie trzy formview szablon przedtem.  W przeszłości, I używać formview z brak tryb wszywka kontrola bez problem.  I naprawdę rozumieć dlaczego ono móc the kontrola.  I używać the Ajax kontrolny toolket stół.  Pod być the wydarzenie kod i the marża dla the strona.  Jakaś propozycja być ogromnie appreciated.

public kawitacyjny SI_Inserting (przedmiot źródło, ObjectDataSourceMethodEventArgs e)
{
//use formview instead

TextBox txtIncidentDatei = (TextBox) FormView1.FindControl ("txtIncidentDatei");
DropDownList ddlSecurityi = (DropDownList) FormView1.FindControl ( " ddlSecurityi");
DropDownList ddlFacilityi = (DropDownList) FormView1.FindControl ( " ddlFacilityi");
DropDownList ddlRatingi = (DropDownList) FormView1.FindControl ( " ddlRatingi");
DropDownList ddlProgrami = (DropDownList) FormView1.FindControl ( " ddlProgrami");
DropDownList ddlCategoryi = (DropDownList) FormView1.FindControl ( " ddlCategoryii");
DropDownList ddlAreai = (DropDownList) FormView1.FindControl ( " ddlAreai " );

e.InputParameters ["socialSecurityNumber"] = "xxxxxx";
e.InputParameters ["incidentDate"] = txtIncidentDatei.Text.Trim ();
e.InputParameters ["facilityWhereOccurred"] = ddlFacilityi.SelectedItem.Text;
e.InputParameters ["programWhereOccurred"] = ddlProgrami.SelectedValue;
e.InputParameters ["securityLevel"] = ddlSecurityi.SelectedItem.Text;
e.InputParameters ["riskRating"] = ddlRating.SelectedValue;
e.InputParameters ["categoryOfIncident"] = ddlCategoryi.SelectedValue;
e.InputParameters ["narrative"] = txtNarrative1.Text;
e.InputParameters ["incidentYear"] = txtYeari.Text;
e.InputParameters ["dmhId"] = "xxxxxx";
}

DataSourceID= " SIDetailsDataSource" OnItemInserted= " FormView1_ItemInserted" OnItemUpdated= " FormView_ItemUpdated " OnItemDeleted= " FormView_ItemDeleted " DataKeyNames= " RowNum "
>


            Height= " 350px" Width= " 700px" ActiveTabIndex= " (0)" >


Main

r>d>
                       
<td>
                    DataSourceID= " SqlDataSource6" DataTextField= " SecurityLevel"
DataValueField= " SecurityLevel" SelectedValue='<%# Zmora ("SecurityLevel") %>'>d>
>></tr>d>el ID= " Label5Read" runat= " serwer" Text= " Program Dokąd Zdarzać się " >>>>>
                    DataSourceID= " SqlDataSource5" DataTextField= " WardDescriptions"
DataValueField= " WardDescriptions" SelectedValue='<%# Zmora ("ResidenceArea") %>'>d>
>
: Etykietka ID= " Label1Read" runat= " serwer" Text= " Incydent Data: ">
sp: Etykietka ID= " Label3Read" runat= " serwer" Text= " Poziom Zabezpieczeń: ">
Label ID= " Label2Read" runat= " serwer" Text= " Łatwość Dokąd Zdarzać się " >>
                    DataSourceID= " SqlDataSource1" DataTextField= " FacilityDescriptions "
DataValueField= " FacilityDescriptions" SelectedValue='<%# Zmora ("FacilityWhereOccured") %>'>d>
Label ID= " Label4Read" runat= " serwer" Text= " Niedawny Proroczy Zachowanie " >>
                        DataSourceID= " SqlDataSource7" DataTextField= " RiskRating "
DataValueField= " RiskRating" >

                    DataSourceID= " SqlDataSource2" DataTextField= " ProgramDescription"
DataValueField= " ProgramDescription" SelectedValue='<%# Zmora ("ProgramWhereOccurred") %>'>d>
Label ID= " Label6Read" runat= " serwer" Text= " Kategoria Incydent: ">d>
                        DataSourceID= " SqlDataSource8" DataTextField= " SeriousIncident"
DataValueField= " SeriousIncident" SelectedValue='<%# Zmora ("CategoryOfIncident") %>'>d>
Label ID= " Label7Read" runat= " serwer" Text= " Siedziba Teren " >
entTemplate>
bPanel>
                entTemplate><tr valign=top>d>tBox ID= " txtYearRead" ReadOnly=true runat= " serwer" Text='<%# Zmora ("IncidentYear") %>'>r><td>xtBox ID= " txtNarrative1Read" ReadOnly=true runat= " serwer" TextMode=MultiLine Width=500px Height=195px MaxLength=1073741823 Text='<%# Zmora ("Opowiadanie") %>'>r>
bel>
emplate>cc1:TabPanel>abContainer>ton ID= " btnNew" runat= " serwer" Text= " Nowy" CommandName= " Nowy"/>
ID= " btnDelete" runat= " serwer" Text= " Deleatur" CommandName= " Deleatur"/>
Template><asp: Etykietka ID= " lblRowNum" runat= " serwer" Text='<%# Zmora ("RowNum") %>' Visible=false>
ntainer ID= " TabContainer1" runat= " serwer"
Height= " 350px" Width= " 700px" ActiveTabIndex= " (0)" >


Main

r>d>tBox ID= " txtIncidentDate" runat= " serwer" Text='<%# Zmora ("IncidentDate"," {(0): D} ") %>'>>age ID= " Image10" runat= " serwer" ImageUrl= " Calendar_scheduleHS.png"/>
TargetControlID= " txtIncidentDate" Enabled= " Prawdziwy " >
d>><td>
                    DataSourceID= " SqlDataSource6" DataTextField= " SecurityLevel"
DataValueField= " SecurityLevel" SelectedValue='<%# Zmora ("SecurityLevel") %>'>d>
>></tr>d>el ID= " Label5" runat= " serwer" Text= " Program Dokąd Zdarzać się " >>>>>
                    DataSourceID= " SqlDataSource5" DataTextField= " WardDescriptions"
DataValueField= " WardDescriptions" SelectedValue='<%# Zmora ("ResidenceArea") %>'>d>
>
: Etykietka ID= " Label1" runat= " serwer" Text= " Incydent Data: ">
Label ID= " Label3" runat= " serwer" Text= " Poziom Zabezpieczeń: ">
Label ID= " Label2" runat= " serwer" Text= " Łatwość Dokąd Zdarzać się " >>
                    DataSourceID= " SqlDataSource1" DataTextField= " FacilityDescriptions "
DataValueField= " FacilityDescriptions" SelectedValue='<%# Zmora ("FacilityWhereOccured") %>'>d>
Label ID= " Label4" runat= " serwer" Text= " Niedawny Proroczy Zachowanie " >>
                        DataSourceID= " SqlDataSource7" DataTextField= " RiskRating "
DataValueField= " RiskRating" >

                    DataSourceID= " SqlDataSource2" DataTextField= " ProgramDescription"
DataValueField= " ProgramDescription" SelectedValue='<%# Zmora ("ProgramWhereOccurred") %>'>d>
Label ID= " Label6" runat= " serwer" Text= " Kategoria Incydent: ">d>
                        DataSourceID= " SqlDataSource8" DataTextField= " SeriousIncident"
DataValueField= " SeriousIncident" SelectedValue='<%# Zmora ("CategoryOfIncident") %>'>d>
Label ID= " Label7" runat= " serwer" Text= " Siedziba Teren " >
entTemplate>
bPanel>
                entTemplate><tr valign=top>d>tBox ID= " txtYear" runat= " serwer" Text='<%# Zmora ("IncidentYear") %>'>r><td>xtBox ID= " txtNarrative1" runat= " serwer" TextMode=MultiLine Width=500px Height=195px MaxLength=1073741823 Text='<%# Zmora ("Opowiadanie") %>'>r>
bel>
emplate>cc1:TabPanel>
abContainer>ton ID= " btnUpdate" runat= " serwer" Text= " Aktualizacja" CommandName= " Aktualizacja"/>
rtItemTemplate>TabContainer ID= " TabContainer1" runat= " serwer"
Height= " 350px" Width= " 700px" ActiveTabIndex= " (0)" >


Main

r>d>tBox ID= " txtIncidentDatei" runat= " serwer" Text='<%# Zmora ("IncidentDate"," {(0): D} ") %>'>ge ID= " Image10i" runat= " serwer" ImageUrl= " Calendar_scheduleHS.png"/>
TargetControlID= " txtIncidentDatei" Enabled= " Prawdziwy " >
d>><td>
                    DataSourceID= " SqlDataSource6" DataTextField= " SecurityLevel"
DataValueField= " SecurityLevel" SelectedValue='<%# Zmora ("SecurityLevel") %>'>d>
>></tr>d>el ID= " Label5i" runat= " serwer" Text= " Program Dokąd Zdarzać się " >>>>>
                    DataSourceID= " SqlDataSource5" DataTextField= " WardDescriptions"
DataValueField= " WardDescriptions" SelectedValue='<%# Zmora ("ResidenceArea") %>'>d>
>
: Etykietka ID= " Label1i" runat= " serwer" Text= " Incydent Data: ">
Label ID= " Label3i" runat= " serwer" Text= " Poziom Zabezpieczeń: ">
Label ID= " Label2i" runat= " serwer" Text= " Łatwość Dokąd Zdarzać się " >>
                    DataSourceID= " SqlDataSource1" DataTextField= " FacilityDescriptions "
DataValueField= " FacilityDescriptions" SelectedValue='<%# Zmora ("FacilityWhereOccured") %>'>d>
Label ID= " Label4i" runat= " serwer" Text= " Niedawny Proroczy Zachowanie " >>
                        DataSourceID= " SqlDataSource7" DataTextField= " RiskRating "
DataValueField= " RiskRating" >

                    DataSourceID= " SqlDataSource2" DataTextField= " ProgramDescription"
DataValueField= " ProgramDescription" SelectedValue='<%# Zmora ("ProgramWhereOccurred") %>'>d>
Label ID= " Label6i" runat= " serwer" Text= " Kategoria Incydent: ">d>
                        DataSourceID= " SqlDataSource8" DataTextField= " SeriousIncident"
DataValueField= " SeriousIncident" SelectedValue='<%# Zmora ("CategoryOfIncident") %>'>d>
Label ID= " Label7i" runat= " serwer" Text= " Siedziba Teren " >
entTemplate>
bPanel>
                entTemplate><tr valign=top>d>tBox ID= " txtYeari" runat= " serwer" Text='<%# Zmora ("IncidentYear") %>'>r><td>xtBox ID= " txtNarrative1i" runat= " serwer" TextMode=MultiLine Width=500px Height=195px MaxLength=1073741823 Text='<%# Zmora ("Opowiadanie") %>'>r>
bel>
emplate>cc1:TabPanel>
abContainer>ton ID= " btnInsert" runat= " serwer" Text= " Wszywka" CommandName= " Wszywka"/>
sp: FormView>

Odpowiedź : Formview - System.NullReference Wyjątek gdy używać findcontrol

Cześć,

The kontrola być prawdopodobnie bezpośredni childcontrols formview. Próbować to

 TextBox txtIncidentDatei = FindControlRecursive (FormView1, "txtIncidentDatei") jako TextBox;

.
.
.
            jawny ładunek elektrostatyczny Kontrola FindControlRecursive (Kontrolny korzeń, smyczkowy id) {
                  jeżeli ((root.ID! = null) && (root.ID == id)) powrotny korzeń;

                  foreach (Kontrolny ctrl w korzeń. Kontrola) {
                        Kontrola znajdować = FindControlRecursive (ctrl, id);
                        jeżeli (znajdować! = null) powrót zakładać;
                  }

                  powrotny null;
            }


/peter
Inne rozwiązania  
 
programming4us programming4us