Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Problém s FormView.FindControl v ASP.NET

Zdravím všechny.

Začínám s ASP.NET v C#. Pracuji ve VS2013 Ultimate FW 4.5.
Vztvořil jsem aplikaci, ve které mám FormView s Labely. Tyto u těchto Labelů potřebuji upravovat vlastnosti, jako barvu textu v závislosti na textovém obsahu. Napčíklad "Vyhovuje" - zelená, "Nevyhovuje" - červená a pod.
Napsal jsem to takto:

if ((FormView1.FindControl("MeasGlobalStatusLabel") as Label).Text == "Vyhovuje")
            {
                (FormView1.FindControl("MeasGlobalStatusLabel") as Label).ForeColor = System.Drawing.Color.Green;
            }

            else if ((FormView1.FindControl("MeasGlobalStatusLabel") as Label).Text == "Nevyhovuje")
            {
                (FormView1.FindControl("MeasGlobalStatusLabel") as Label).ForeColor = System.Drawing.Color.Red;
            }
ale po spuštění mi server vyhodí chybu:

Odkaz na objekt není nastaven na instanci objektu.

Popis: Při provádění aktuálního webového požadavku došlo k neošetřené výjimce. Další informace o chybě a o jejím původu v kódu naleznete v trasování zásobníku.

Podrobnosti o výjimce: System.NullReferenceException: Odkaz na objekt není nastaven na instanci objektu.

Zdrojová chyba:


Řádek 14:
Řádek 15: Label lbl2 = new Label();
Řádek 16: lbl2.Text = (FormView1.FindControl("StatusLabel") as Label).Text;
Řádek 17: lbl2.BackColor = System.Drawing.Color.Red;
Řádek 18:

Zdrojový soubor: g:\C#\Programování\2013\Zkoska1\Zkoska1\Default.as px.cs Řádek: 16

Trasování zásobníku:


[NullReferenceException: Odkaz na objekt není nastaven na instanci objektu.]
Zkoska1._Default.Page_Load(Object sender, EventArgs e) in g:\C#\Programování\2013\Zkoska1\Zkoska1\Default.as px.cs:16
System.Web.Util.CalliEventHandlerDelegateProxy.Cal lback(Object sender, EventArgs e) +51
System.Web.UI.Control.OnLoad(EventArgs e) +92
System.Web.UI.Control.LoadRecursive() +54
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772

Můžete mi někdo poradit co s tím?

Děkuji za drahocenné rady.

Odpověď na otázku

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny