Quantcast
Channel: Web Forms
Viewing all articles
Browse latest Browse all 23244

Object reference not set to an instance of an object - on move between pages

$
0
0

hello

i have a form which is splited up to more steps. if i move forward/backward between the pages, i sporadically get a NullReferenceException. my experience in asp and c# is very low. so i need help.

the error appears, if i move between step1 and step2

Pagecode:

<!-- Step 1 -->
<div class="processHeader">
<h2><%=Translate("Labels", "schritt")%> 1: <%=Translate("Limit", "details_eingeben")%></h2>
<div class="processForm border">
<div class="processFormInner border form">
<table>
<tr>
<td><%=Translate("Limit", "antragsdatum")%></td>
<td><asp:Label ID="lbAntragsdatum" runat="server" Text='<%#AntragsDatum %>'></asp:Label></td>
</tr>
<tr>
<td><b><%=Translate("Limit", "gewuenschte_summe")%></b>&nbsp;<span class="error">*</span><asp:RequiredFieldValidator ID="RequiredFieldValidator1"
runat="server"
ControlToValidate="rnTbVersicherungssumme"
EnableClientScript="false"
Display="None"></asp:RequiredFieldValidator>
<asp:CustomValidator ID="custSumme" runat="server" ControlToValidate="rnTbVersicherungssumme" OnServerValidate="CheckSumme"></asp:CustomValidator>
</td>
<td><rad:RadNumericTextBox ID="rnTbVersicherungssumme"
Skin="Prisma"
SkinsPath="~/Controls/Telerik/RadNumericTextBox/Skins/"
Type="Number"
Style="width:290px;"
runat="server" >
<IncrementSettings InterceptArrowKeys="false" InterceptMouseWheel="false" />
</rad:RadNumericTextBox> <%= currentVersicherter.waehrung %></td>
</tr>
<tr>
<td><%=Translate("Limit", "geschaeftsverbindung_seit")%>:</td>
<td>
<rad:RadDatePicker Skin="PrismaSimple"
ID="radGeschaeftsverbindung"
Runat="server"
SkinsPath="~/Controls/Telerik/Calendar/Skins/"
RadControlsDir="~/Controls/Telerik/" Width="312px" MinDate="01.01.1900">
<DateInput DateFormat="MMMM yyyy"></DateInput>
<Calendar Skin="PrismaSimple" BorderColor="#CCCCCC">
</Calendar>
</rad:RadDatePicker>
</td>
</tr>
<tr>
<td align="right"><%=Translate("Labels", "oder")%></td>
<td><asp:CheckBox ID="cbNeukunde" runat="server" OnCheckedChanged="CheckNeukunde"></asp:CheckBox></td>
</tr>
<tr>
<td><%=Translate("Limit", "datum_aelteste_rechnung")%></td>
<td>
<rad:RadDatePicker Skin="PrismaSimple"
ID="radDateAeltesteRechnungVom"
Runat="server"
SkinsPath="~/Controls/Telerik/Calendar/Skins/"
RadControlsDir="~/Controls/Telerik/" Width="312px">
<Calendar
EnableMonthYearFastNavigation="False"
Skin="PrismaSimple"
EnableMultiSelect="False"
ShowRowHeaders="false"
SingleViewRows="6"
EnableNavigation="True"></Calendar>
</rad:RadDatePicker>
</td>
</tr>

<tr>
<td><%=Translate("Limit", "derzeitige_forderung")%></td>
<td><rad:RadNumericTextBox ID="rnTbForderungsstand"
Skin="Prisma"
SkinsPath="~/Controls/Telerik/RadNumericTextBox/Skins/"
Type="Number"
Style="width:290px;"
runat="server" >
<IncrementSettings InterceptArrowKeys="false" InterceptMouseWheel="false" />
</rad:RadNumericTextBox> <%= currentVersicherter.waehrung %></td>

</tr>
<tr>
<td><%=Translate("Limit", "vereinbartes_zahlungsziel")%></td>
<td><rad:RadNumericTextBox Skin="Prisma" SkinsPath="~/Controls/Telerik/RadNumericTextBox/Skins/" Type="Number" ID="rnTbZahlungsziel" Style="width:290px;" runat="server" MaxLength="3" NumberFormat-DecimalDigits="0">
<IncrementSettings InterceptArrowKeys="false" InterceptMouseWheel="false" />
</rad:RadNumericTextBox> <%= Translate("Labels","Tage") %></td>

</td>
</tr>
<tr>
<td><%=Translate("Limit", "umsaetze_12_monate")%></td>
<td><rad:RadNumericTextBox Skin="Prisma" SkinsPath="~/Controls/Telerik/RadNumericTextBox/Skins/" Type="Number" ID="rnTbUmsaetze12Monate" Style="width:290px;" runat="server">
<IncrementSettings InterceptArrowKeys="false" InterceptMouseWheel="false" />
</rad:RadNumericTextBox> <%= currentVersicherter.waehrung %></td>

</tr>
<tr>
<td><%=Translate("Limit", "einschaetzung_zahlung")%>&nbsp;<uc1:InfoPopup ID="InfoPopup1" runat="server" ItemKey="info_zahlungsweise" /></td>
<td><asp:DropDownList ID="ddlZahlungsweise" CssClass="processTextbox" runat="server">
<asp:ListItem Text="" Value=""></asp:ListItem>
<asp:ListItem Text="++" Value="1"></asp:ListItem>
<asp:ListItem Text="+" Value="2"></asp:ListItem>
<asp:ListItem Text="+/-" Value="3"></asp:ListItem>
<asp:ListItem Text="-" Value="4"></asp:ListItem>
<asp:ListItem Text="--" Value="5"></asp:ListItem>
<asp:ListItem Text="unbekannt" Value="0"></asp:ListItem>
</asp:DropDownList></td>
</tr>
<tr>
<td><%=Translate("Limit", "kundennummer_bei")%>&nbsp;<%= currentVersicherter.versicherter1.bezeichnung %></td>
<td><asp:TextBox ID="tbKundennummerBeiVN" CssClass="processTextbox" runat="server" MaxLength="12"></asp:TextBox></td>
</tr>

<tr>
<td><%=Translate("Limit", "zustaendig_bei")%>&nbsp;<%= currentVersicherter.versicherter1.bezeichnung %></td>
<td><asp:TextBox ID="tbZustaendigBeiVN" CssClass="processTextbox" runat="server" MaxLength="20"></asp:TextBox></td>
</tr>
<tr>
<td><%=Translate("Limit", "bemerkungen")%></td>
<td><asp:TextBox ID="tbBemerkungen" runat="server" TextMode="MultiLine" CssClass="processTextbox"></asp:TextBox></td>
</tr>
</table>
</div>
<div class="processFormButtonRow">
<asp:Button runat="server" ID="btStep1Weiter" Text="Weiter" OnClick="Step1WeiterClick" CssClass="important"/>
</div>
</div>
<div class="processFormButtonRow">
<asp:Button runat="server" ID="btStep1Abbrechen" OnClick="AbbrechenClick"/>
</div>
</div>

<!-- /Step 1-->
</asp:PlaceHolder>

<asp:PlaceHolder id="phSchritt2" runat="server">

<!-- Step 2 -->

<div class="processHeader">
<h2><asp:Literal runat="server" ID="litStep2Title"></asp:Literal></h2>
<div class="processForm border">
<div class="processFormInner border form">
<table>
<tr>
<td><%= Ueberschreitung12Mon %> <span class="error">*</span><asp:CustomValidator ID="cvalUeberschreitung"
runat="server"
OnServerValidate="checkUeberschreitung"
EnableClientScript="false"
Display="None"></asp:CustomValidator></td>
<td><asp:Panel runat="server" id="panUeberschreitung" style="padding-right:5px">
<asp:RadioButton id="rbUeberschreitungJa" runat="server" GroupName="rbUeberschreitung" Text="Ja"/>
<asp:RadioButton id="rbUeberschreitungNein" runat="server" GroupName="rbUeberschreitung" Text="Nein"/>
</asp:Panel></td>
</tr>
<tr>
<td><%=Translate("Limit", "12mon_kreditwuerdigkeit") %> <span class="error">*</span><asp:CustomValidator ID="cvalKreditwuerdigkeit"
runat="server"
OnServerValidate="checkKreditwuerdigkeit"
EnableClientScript="false"
Display="None"></asp:CustomValidator></td>
<td><asp:Panel runat="server" id="panKreditwuerdigkeit" style="padding-right:5px">
<asp:RadioButton id="rbKreditwuerdigkeitJa" runat="server" GroupName="rbKreditwuerdigkeit" Text="Ja" onClick="checkNegativ(true)" />
<asp:RadioButton id="rbKreditwuerdigkeitNein" runat="server" GroupName="rbKreditwuerdigkeit" Text="Nein" onClick="checkNegativ(false)" />
</asp:Panel></td>
</tr>
<tr>
<td><%=Translate("Limit", "wenn_ja_welche") %></td>
<td><asp:RadioButtonList id="rblNegativInfo" runat="server"></asp:RadioButtonList><br />
<asp:TextBox ID="tbNegativInfoText" runat="server" TextMode="MultiLine" CssClass="processTextbox"></asp:TextBox>
</td>
</tr>
</table>
</div>
<div class="processFormButtonRow">
<asp:Button runat="server" ID="btStep2Zurueck" OnClick="ChangeStep1Click" />
<asp:Button runat="server" ID="btStep2Weiter" OnClick="Step2WeiterClick" CssClass="important"/>
</div>
</div>
<div class="processFormButtonRow">
<asp:Button runat="server" ID="btStep2Abbrechen" OnClick="AbbrechenClick"/>
</div>
</div>

<!-- /Step 2 -->
</asp:PlaceHolder>

This function is called on Buttonclick "next"

protected void Step1WeiterClick(object sender, EventArgs e)

{
this.Validate();
if (this.IsValid)
{
LimitForm.SaveFormObject(this.Form); // HERE I GET THE NullReferenceException. function code see below

if (LimitForm.FormObject.InternerKey != null)
{
LimitForm.MapViewToForm(this.Form, currentCulture);
}
// goto page 2
LimitForm.ActiveStep = 2;
// load screen
setActiveScreen(LimitForm);
}
else
{
SetDefaultButton(btStep1Weiter);
}
}

public void SaveFormObject(HtmlForm htmlForm)
{
FormToObjectMapper f2oMapper = new FormToObjectMapper(htmlForm,this.FormObject, typeof(LimitMeldungFormObject), new PrismaFormValueConverter(), new PrismaControlValueExtractor());
this.FormObject = f2oMapper.doMapping(true) as LimitMeldungFormObject;
}

can anyone tell me, why i get NullReferenceException there? it only happens very seldom but it happens and i don't know why

thanks & best regards


Viewing all articles
Browse latest Browse all 23244

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>