الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

خطأ فى جملة try

بدأه HadiKarim في 6 يوليو 2011 · 10 رد · 607 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void buttonSubmit_Click(object sender, EventArgs e)
    {
        string selectedEvent = dropDownListEvents.SelectedValue;
        string firstName = textFirstName.Text;
        string lastName = textLastName.Text;
        string email = textEmail.Text;


    }
}

بعد الضغط على submit المفروض اتحول للصفحة ResultsPage بخاصية PostBackUrl 
و تظهر البيانات على label

public partial class ResultsPage : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            DropDownList dropDownListEvents =
                (DropDownList)PreviousPage.FindControl("dropDownListEvents");

            string selectedEvent = dropDownListEvents.SelectedValue;

            string firstName = ((TextBox)PreviousPage.FindControl("textFirstName")).Text;
            string lastName = ((TextBox)PreviousPage.FindControl("textLastName")).Text;
            string email = ((TextBox)PreviousPage.FindControl("textEmail")).Text;

            labelResult.Text = string.Format("{0} {1} selected the event {2}",
                firstName, lastName, selectedEvent);

        }
        catch
        {
            labelResult.Text = ("the originating page must contain valid controls");
        }
    }
}

المشكلة:

تظهر جملة catch

the originating page must contain valid controls

#2

الصراحة من الصعب التكهن بالمشكلة .. السبب ان الكود يحتاج للفهم اكثر .. والشئ الاخر .. التنسيق ..

لكن دائما ماكون هذه النوعية من الاخطاء هي وجود مشكلة مع الادوات الموجودة داخل الصفحة ..

كانك لم تقم بتعريف اداة او التعامل معه بالشكل الصحيح .. تأكد من هذه النقطة ..

اسف لم استطع ان اساعدك بالشكل الكافي لكني لم افهم الكود جيدا ..

تحياتي العطرة ..

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#3

أشكرك على الإهتمام

#4

السلام عليكم ورحمه الله وبركاته

اخي لحل مشكلتك جرب التالي


catch (Exception ex)
{
labelResult.Text=ex.Message;
}

وبعدها قم بكتابة رسالة الخطأ

.:: Wish to become better and better ::.

#5

وعليكم السلام ورحمة الله تعالى و بركاته

جملة (تراى) لا تتنفذ و لا أعرف السبب, ينطها وينفذ ال (إكسيبشن) على (الليبل) أو غيره

Object reference not set to an instance of an object.

#6

السلام عليكم ورحمه الله وبركاته

اخي تأكد من اسامي الادوات المستدعاه من ال PreviousPage

.:: Wish to become better and better ::.

#7

اعمل debug للموقع وضع Breakpoint على بداية جملة try وانظر على اي سطر يظهر الخطأ .

وان امكن ارفق المشروع او الصفحتين لنرى افضل اين المشكلة .

1
#8
TareqVB كتب:

اعمل debug للموقع وضع Breakpoint على بداية جملة try وانظر على اي سطر يظهر الخطأ .

وان امكن ارفق المشروع او الصفحتين لنرى افضل اين المشكلة .

EventRegistrationWeb.zip

#9

حيث انك تستخدم masterpage يجب اولا ان تبحث عن ContentPlaceHolder وبداخلها تبحث عن الادوات وذلك كمايلي :

ContentPlaceHolder cph1 = (ContentPlaceHolder)Page.PreviousPage.FindControl("MainContent");

 DropDownList dropDownListEvents =
                (DropDownList)cph1.FindControl("dropDownListEvents");
....
#10

same error .. thanks for caring TariqVB

#11

غير السطر كمايلي

 ContentPlaceHolder cph1 = (ContentPlaceHolder)Page.PreviousPage.Controls[0].FindControl("MainContent");

فيصبح الكود كمايلي

 ContentPlaceHolder cph1 = (ContentPlaceHolder)Page.PreviousPage.Controls[0].FindControl("MainContent");

            DropDownList dropDownListEvents =
                (DropDownList)cph1.FindControl("dropDownListEvents");

            string selectedValue = dropDownListEvents.SelectedValue;

            string firstName = ((TextBox)cph1.FindControl("textFirstName")).Text;
            string lastName = ((TextBox)cph1.FindControl("textLastName")).Text;
            string email = ((TextBox)cph1.FindControl("textEmail")).Text;



            labelResult.Text = string.Format("{0} {1} Email: {2} selected the event {3}",
                firstName, lastName, email, selectedValue);

مواضيع مشابهة