-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
یک سوال:
من یک فرم اصلی دارم و میخوام وقتی روی یک دکمه در این فرم اصلی کلیک کردم فرم2 باز بشه و در عین حال یک join هم انجام بشه بین 3 جدول و نتیجه رو در همون فرم 2 به من نشون بده.
بعد در فرم 2 میخوام عملیات درج حذف و ویرایش و جستجو بر اساس اون جدولی که برام join کرده رو انجام بدم.
آیا میتونم کد join سه تا جدول رو پس از این کد بنویسم؟
Form2 f2 = new Form2();
f2.show();
داداش گلم همونطور که قبلا هم گفتم شما یه مقدار پروژه رو سنگین برداشتی. بهتره اول یک سری چیزهای مقدماتی رو یاد بگیری بعد چنین کارهایی بکنی. اصلا و ابدا شما آمادگی انجام پروژه با تیبل های بهم مرتبط رو نداری.
ولی بازم من جوابت رو میدم
ببین شما یک کوئری همیشگی برای جوین داری و یک متد پر کننده دیتا گرید. این دو تا ربطی بهم ندارن و شما ر وقت خاستی میتونی نتیجه این کوئری را بدی به اون متد تا گریدت با نتیجه اون کوئری پر بشه. حالا اینکارو هر وقت عشقته میدتونی انجام بدی
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
morteza271
راستش من که اصلا متوجه نشدم منظورتون چیه!!!!
یعنی چی join رو بعد از دستورات بالا بنویسید؟!!
نمونه برنامه ای که گذاشتم رو بررسی کردین؟
همه چی توی اون هست خیلی راحت میتونید مطابق با نیاز خودتون تکمیلش کنید...
برنامه باز نمیشه:((
ببین من میخوام روی فرم اصلی وقتی دکمه کالا رو میزنم،فرم بعدی باز بشه و 3 تا جدول کفش،رنگ و سایز با هم بالا بیان یعنی جوین بشن و توی دیتاگرید ویو بهم نشونش بده.
بعد روی این جدول درج و حذف و ویرایش رو انجام بدم.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
آقا مجتبی دو تا سوال:
1) شما میتونی یک کوئری بنویسی که حاوی جوین مورد نظرت باشه؟ یعنی اون دیتایی که میخوای رو از دیتابیس از طریق کوئری نویسی بگیری. میتونی اینکار رو بکنی یا نه؟
2) اگر به شما یک منبع داده ( حالا هر چی مثلا یه دیتا ست ، یه دیتا تیبل، یه آرایه یه لیست یا ... ) بدن میتونی باهاش گرید را پر کنی؟
>> جواب هر دو بله >>> خب عزیزم کوئری را بنویس و با نتیجش این گرید رو پر کن. چیزی پیچیده ای که نیست
>> جواب یک بله جواب دو نه >> شما به من بگو از اون کوئریت چه خروجی ای در میا تا بهت یاد بدم باهاش گرید ر و پر کنی.
>> جواب یک نه جواب دو بله >> پس شما تو نوشتن کوئری و جوین نویسی مشکل داری. خب این چیز پیچیده ای نیست. کافیه رابطه سه تا جدولت رو بگی و بگی چه فیلد هایی میخوای. براحتی میشه جوین را نوشت. البته اینکار رو باید خودت بکنی. اگر نتونی این کوئری را بنویسی یعنی چیزی یاد نگرفتی و باید یاد بگیری. نیم ساعت هم طول نمکیشه یاد گرفتنش.
>> جواب هر دو نه >> عزیزم قبول کن که باید یه چیزهایی یاد بگیری بعد شروع کنی چنین کاری رو بکنی. میدونم که مجبوری سریع اینکارو بکنی ولی دیگه این میشه که شما میخواهی یکی برات پروژه دانشجوئیت رو حل کنه و خب من و سایر دوستان بخاطر خودشون هم شده اینکارو نمیکنیم. چون بنفعته که تحت فشار قرار بگیری و بری یاد بگیری
موفق باشی
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
سلکت زدن و درج رو میتونم انجام بدم با ADO
اما من میخوام وقتی اون فرم جدید باز میشه همزمان توی گریدویوم اون 3 تا جدولی که میخوام سلکت هم بکنم.سوالم این بود که توی فرم لودم میتونم دستور سلکت رو بنویسم؟
نتیجه این سلکت هر چی که هست روش درج و ویرایش رو انجام میدم.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
خب جواب اینو که بهت دادم
شما یک متد بنویس برای کوئری
یک متد بنویس برای پر کردن گرید
بعد وقتی خاستی فرم جدید رو باز کنی اول متد کوئری را اجرا کن
بعد یک نمونه از فرمت بساز
بعد با نتیجه کوئری گرید را پر کن
بعد فرم را نمایش بده
var QueryResult = QueryMethod();
Form MyForm = new Form();
FillGridView(QueryResult);
MyForm.Show();
البته توجه کن که تو متد FillGridView() باید به گرید ویو دسترسی داشته باشی.
ببین پسر خوب اینها هیچکدوم جواب کامل نیست. ولی خب دقیقا به شما میگه باید چکار کنی. شما بشین دست به کد شو بعد هر جا ایراد برخوردی سوال کن.
باور کنی یه ذره تلاش کنی چیز سختی نیست. ضمنا هر جا به مشکل خود کارو متوقف نکن. هر قسمتیش رو بلدی بنویس تا بعدا مشکل قسمتهای دیگش رو حل کنی
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
خب توی ویرایش فهمیدم اشکال کارم کجا بوده من توی انتخاب cells دقت نمیکردم؛ اما چند تا سوال برام پیش اومده:
1. وقتی میخوام رکوردی رو ویرایش کنم باید حتما همه فیلدهاش رو پر کنم وگرنه نمیشه، راهی نداره که فقط اون فیلدی که میخوام ویرایش کنم رو پر کنم؟
2.توی جدول کالا نمیشه کاری کرد وقتی جنسی فروش میره ، از فیلد تعداد به همون تعدادی که فروش رفته کم بشه یا کاربر خودش باید دستی این کارو بکنه؟
3.یه دستور برای پاک کردن متن از روی تکست باکسها بعد از وقتی که درج یا ویرایش میکنم میخوام.
4.توی جدول جدیدم،آیدی کالا و نام کالا رو کلید اصلی گرفتم، آیدی کالا اتونامبر هست، اما وقتی میخوام رکوردهام رو درج کنم رکورد تکراری درج میکنه.باید چکار کنم؟
5.موقع جستجو وقتی گریدویو نتایج رو میاره، باید چکار کنم که کاربر بتونه به صفحه قبل برگرده؟
6.برای جستجو بر اساس 4 فیلد، چه راه خوب و تمیزی هست که کاربر اختیاری یکی از 4 مورد یا هر 4 مورد رو انتخاب و جستجوش رو انجام بده.مثلا جستجو کن بر اساس: نام، شرکت سازنده، قیمت و تعداد.منظورم روی فرم هست نه دستورش.بجز چک باکس.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
1. منظورت تو گریده یا تیبل دیتا بیس؟ اگر گریده که اصلا اینطور نیست و شما هرکدوم رو بخوای میتونی ویرایش کنی و هر کدوم رو نمیخوای خالی بذاری. اما اگر منظورت دیتا بیسه که خب باید اجازه null بودن رو به اون فیلد بدی تا بتونی بدون پر کدنش یک رکورد ایجاد کنی
2. خب برنامه نویسی یعنی همین دیگه. یعنی شما با کد این دستورات رو بدی. معنی نداره کاربر دستی اینکارو بکنه. شما باید کدی بنویسی که وقتی یک جنسی فروختهش د به همون تعداد از موجودی ها کم بشه
3. اینکه خیلی سادست عزیزم
TextBox.Text = string.Empty;
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
a_mottaghi_pour
1. منظورت تو گریده یا تیبل دیتا بیس؟ اگر گریده که اصلا اینطور نیست و شما هرکدوم رو بخوای میتونی ویرایش کنی و هر کدوم رو نمیخوای خالی بذاری. اما اگر منظورت دیتا بیسه که خب باید اجازه null بودن رو به اون فیلد بدی تا بتونی بدون پر کدنش یک رکورد ایجاد کنی
2. خب برنامه نویسی یعنی همین دیگه. یعنی شما با کد این دستورات رو بدی. معنی نداره کاربر دستی اینکارو بکنه. شما باید کدی بنویسی که وقتی یک جنسی فروختهش د به همون تعداد از موجودی ها کم بشه
3. اینکه خیلی سادست عزیزم
TextBox.Text = string.Empty;
درود به شما
1.منظورم توی گرید هست، من توی دیتابیس بهش اجازه Null بودن دادم ولی وقتی میخوام توی گرید ویرایشش کنم کلید اصلی رو پر میکنم ولی وقتی ران میکنم این پیغام رو میده: Input string not in a correct format
2.خب میدونم که اگه بخوام گزارش کالاهای باقیمونده رو بدست بیارم، باید کل کالاهام رو - فروش رفته ها بکنم، ولی نمیدونم چطوری وقتی فروش میرن بهش بگم از جدول کالا کم کن.
3. این کد رو کجا بزارم که تکست باکس رو پاک کنه؟
یه مشکل دیگه: اون فیلد آیدی که اتونامبر گذاشتم اول از 1 شماره میزد ، بعد که برنامه رو دوباره اجرا کردم شروع کرده از 1000 عدد میزنه، این مشکل از چیه؟
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
1. باید ببینی این پیغام رو کجا میده. ممکنه ربطی به گرید نداشته باشه. باید ببینی به کدوم قسمت کد ایراد میگیره
2. شما باید کاری کنی وقتی یه جنسی فروش رفت بلافاصله یه دونه از موجودی کالاهات کم بشه. یعنی فیلد تعداد اون کلا رو ویرایش و آپدیت کنی
3. هر جا که میخوای بگی تکست باکست خالی بشه
4. اینطور نمیتونه باشه. ببین این عدد از یک شروع میشه و هی میره بالا. تا زمانی هم که این تیبل هست همین روند رو ادامه میده و هیچ راهی نداره که مثلا شما بگی دوباره از یک شروع کنه. هر تستی که شما میکنی و کلا هر رکوردی که سعی میکنی توش ایجاد کنی حالا چه موفق بشی یا نه یه دونه اونو افزایش میده ولی هرگز و هرگز خود به خودش چیزی عوض نمیشه.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
این کد درج من هست که وقتی اون کد رو میزارم برای پاک کردن تکست باکس ازم ایراد میگیره،شاید من جای درستی نزاشتمش،همچنین بجز فیلد ایدی که اتونامبر هست،بقیه فیلدها میتونن تکراری درج بشن،من میخوام ایدی و nameatr در این جدول منحصر به فرد باشن.:
atr table = new atr
{
nameatr = textBox1.Text=string.Empty,
rayehe = textBox2.Text=string.Empty,
sherkat = textBox3.Text=string.Empty,
unitprice = int.Parse(textBox4.Text=string.Empty),
number = int.Parse(textBox5.Text=string.Empty),
};
database.atrs.Add(table);
database.SaveChanges();
dataGridView1.DataSource = database.atrs.ToList();
اینم کد ویرایش من هست که هر وقت میخوام یکی از فیلدها رو تکی ویرایش کنم به برخی از جاهای برنامه ایراد میگیره:
int a = int.Parse(dataGridView1.CurrentRow.Cells[0].Value.ToString());
string names = dataGridView1.CurrentRow.Cells[1].Value.ToString();
atr table = database.atrs.First(i => (i.idatr == a) && (i.nameatr == names));//System.InvalidOperationException was unhandled
HResult=-2146233079
Message=Sequence contains no elements
table.nameatr = textBox1.Text;
table.rayehe = textBox2.Text;
table.sherkat = textBox3.Text;
table.unitprice =int.Parse( textBox4.Text);Input string was not in a correct format.
table.number = int.Parse(textBox5.Text);Input string was not in a correct format.
dataGridView1.DataSource = database.atrs.ToList();
برای اون فیلد که اتونامبر هست این بار از 2005 شروع کرد به عدد دادن ، مشکل از چیه؟
اون سوال های قبلیمو هم ممنون میشم جواب بدید.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
آقا مجتبای عزیزم شما اشتباهات زیادی تو کد نویسی داری. کاش یکی اطرافت بود تا بتونی ازش کمک حضوری بگیری.
من یه سری از خطاهات رو میگم ولی بعید میدونم با این سطح بتونی این پروژه رو تکمیل کنی:
1. این چیه نوشتی؟
atr table = new atr
یعنی اسم کلاست رو گذاشتی atr ؟
این چه کلاسیه اونوقت؟ اسن روش نام گذاری رو کی بهت یاد داده؟!!!!!!!!!!!!!!
2. این چیه نوشتی؟
nameatr = textBox1.Text=string.Empty
پسر خوب شما میخواهی nameatr که از نظر اسم گذاری هم افتضاحه رو مقدار بدی. خب مقدار تکست باکس رو بهش میدی. دیگه نباید بلافاصله پشتش بنویسی مساوی است با string.Empty . بعد از اتمام همه مراحله که باید تکست باکس رو خالی کنی.
کلا هر جا نوشتی مساوی است با string.Empty را پاک کن.
3. بهتره از دیتا بایندینگ استفاده نکنی. قبلا هم بهت گفتم. شما کوئری را بگیر و بعدا با نتیجه کوئری گریدت را پر کن. نه اینکه نتیجه کوئری را بعنوان دیتا سورس گریدت قرار بدی. اگر نتونستی با نتیجه کوئریت گریدت رو پر کنی خودم بهت یاد میدم.
4. اینا چیه وسط کدت؟ پاکشون کن
//System.InvalidOperationException was unhandled HResult=-2146233079
Message=Sequence contains no elements
5. اینا رو هم پاک کن.
Input string was not in a correct format.
6. داداش گلم تو کد نویسی و اسم گذاری باید بیشتر دقت میکردی. ببین داداش من اینهمه پست دادم فقط برای کمک شما. میتونستم بهت بگم بده خودم برات انجام بدم. اونطوری صد برابر هم بیشتر تکشر میکردی و راضی تر بودی ولی باید بدونی که همه این راه شما رو رفتن. با دقت و تلاش میتونی حلش کنی. هییییییییییییییچ چیز پیچیده ای وجود نداره. بخدا اگر یکی بغلت باشه ایراداتت رو بگه خودت خنده ات میگیره که چقد راحت بوده و نمیدونستی. هر جاش سخت بود من خودم اصلا کدش رو برات مینویسم ولی اینا هیچکدومش سخت نیست.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
دیشب ازت پرسیدم که جواب ندادی. اگر بچه تهرانی بگو فردا میام خونتون خودم بهت یاد میدم چی به چیه. البته رایگان ها :)
-
1 ضمیمه
ارور object reference not set to an instance of an object?
سلام
پروژه های روی کامپیوترم از پری روز مشکل پیدا کردن و نمیتونم هیچ تغییراتی توشون بدم موقع ذخیره تغییرات این ارور رو میدن که عکسش رو ضمیمه کردم، مشکل نمیدونم کجاست حتی پروژه هایی که قبلا کار کرده بودم و هیچ تغییراتی هم توشون ندادم اینطوری شدن.
.net freamWork رو هم عوض کردم نشد حتی دیروز ویندوز رو هم عوض کردم بازم حل نشد ممنون میشم راهنمایی کنین
ضمیمه 106501
-
نقل قول: ارور object reference not set to an instance of an object?
یک مقداری null هستش که قبول نمیکنه
احتمالا یه جا که انتظار داری دیتا هات null نباشه و کد رو بر اون اساس نوشتی این اتفاق افتاده , به نظرم برنامه رو trace کن اگه میتونه
اگه نه که دیتابیس رو بررسی کن
-
نقل قول: ارور object reference not set to an instance of an object?
به دیتا بیس فکر نکنم مربوط بشه ، و در ضمن همه برنامه های روی کامپیوترم اینطوری شدن
وقتی هم که trace میزنم به اولین خطم نرسیده ارور میده ، یعنی مثل اینکه اول ارور میده بعد میره کد ها رو چک میکنه
-
مشکل : اگر می تونید در خطا که میده برنامه من کمکم کنید
با سلام
من تو برنامه با این خطا روبه رو شدم
cmb_typ.Text = dgv.CurrentRow.Cells[7].Value.ToString();
System.NullReferenceException was caught Message=Object reference not set to an instance of an object.
مشکل اصلی اینجا هست که خانه 7 مقدار دارد و خالی نیست بار اول این خطا رو میده اما بار دوم بدون خطا کار می کنه اگر میشه کمکم کنید
با تشکر
-
نقل قول: مشکل : اگر می تونید در خطا که میده برنامه من کمکم کنید
ایا کسی نیست منو کمک کنه
خواهش می کنم راهنمایی کنید من چیکار کنم
خیلی ممنون
-
نقل قول: مشکل : اگر می تونید در خطا که میده برنامه من کمکم کنید
نقل قول:
نوشته شده توسط
mortaza94
با سلام
من تو برنامه با این خطا روبه رو شدم
cmb_typ.Text = dgv.CurrentRow.Cells[7].Value.ToString();
System.NullReferenceException was caught Message=Object reference not set to an instance of an object.
مشکل اصلی اینجا هست که خانه 7 مقدار دارد و خالی نیست بار اول این خطا رو میده اما بار دوم بدون خطا کار می کنه اگر میشه کمکم کنید
با تشکر
با درود و قبولی طاعات و عبادات شما
یکی از این دوحالته
1.یا شما سلولی رو انتخاب کردید که وجود خارجی نداره(سلول ها از 0 شروع میشن یعنی اگر هفتیم سلوله وقتی از 1 میشمورینش در واقع باید بنویسید سلول 6)
2.یک چیزی ارش میخواین که قابل انجام نیست,کد بالا که میگه نمیتونه شیئ رو به رشته تبدیل کنه و واسطی ازش بسازه.مثلا نمیشه تصویر,فیلدهای خاص رو به رشته برگردوند.
دقیقا بگین در سلول مورد نظر شما چه چیزی قرار میگیره؟
-
نقل قول: ارور object reference not set to an instance of an object?
دوست عزیز یک یا چند تا از رفرنس های ویژوال استادیوت از بین رفته
اگه همه ی پروژهات همین طور شدن باید ویژوال رو یک بار پاک و مجدد نصب کنی
-
نقل قول: ارور object reference not set to an instance of an object?
باید برنامتون رو تو Visual Studio اجرا کنید ببینید از کدوم خط داره ایراد میگیره.
-
نقل قول: ارور object reference not set to an instance of an object?
نقل قول:
نوشته شده توسط
programerinfonet
دوست عزیز یک یا چند تا از رفرنس های ویژوال استادیوت از بین رفته
اگه همه ی پروژهات همین طور شدن باید ویژوال رو یک بار پاک و مجدد نصب کنی
ممنون از راهنماییتون ولی اگه دقت کنین بالا نوشتم که حتی ویندوز رو هم عوض کردم و بعد از اون سورس هام رو روی یه سیستم دیگه امتحان کردم ولی بازم همون ارور رو داد
-
نقل قول: ارور object reference not set to an instance of an object?
این رو هم بالا پیشنهاد دادن که اونم توضیح دادم که در حالت عادی مشکلی نداره فقط نمیتونم هیچ تغییراتی رو پروژه بدم
به طور مثال یه کلید اظافه میکنم و هیچ کدی هم براش نمینویسم وقتی میخوام ذخیره کنم این ارور رو میده
-
نقل قول: ارور object reference not set to an instance of an object?
این رو هم بالا پیشنهاد دادن که اونم توضیح دادم که در حالت عادی مشکلی نداره فقط نمیتونم هیچ تغییراتی رو پروژه بدم
به طور مثال یه کلید اظافه میکنم و هیچ کدی هم براش نمینویسم وقتی میخوام ذخیره کنم این ارور رو میده
-
مشکل null در کمبوباکس
دومین سوالم مربوط به بایندینگ کردن کمبوباکس به دیتابیس هست
selectvalue درست اجرا میشه اما بعد از اتمام خطا میده
این کد قسمت هست
private void cmbindustry_SelectedIndexChanged(object sender, EventArgs e)
{
codeindustry = (int)cmbindustry.SelectedValue;
this.companyTableAdapter.codecompany(this.bourseDa taSetcmbcompany.company, codeindustry);
//this.companyTableAdapter.codecompany(this.bourseDa taSetcmbcompany.company, (int)cmbindustry.SelectedValue);
}
Object reference not set to an instance of an object.
-
نقل قول: مشکل null در کمبوباکس
سلام
از رخداد زیر استفاده کن، مشکلت حل می شه
SelectionChangeCommitted(object sender, EventArgs e)
-
نقل قول: مشکل null در کمبوباکس
ممنون اما هر کاری کردم کمکی نکرد و بازم پیغام هست
چه به صورت ویژوال انتخاب کردم ارور داد و همینکه دستی کدش رو درست کردم بازم مشکل داشت
-
نقل قول: مشکل null در کمبوباکس
ببخشید نمیدونم متوجه منظورتون شدم یا نه
اما فکر کنم شما می خواید مقدار انتخابی کمبو باکس رو به دستور پایینی که نوشتین پاس بدید؟درسته ؟
اگه اینجوریه خوب تو همون رویدادتون اگه index عنصر انتخابی رو میخوایید از این دستور استفاده کنید:
codeindustry = cmbindustry.Selectedindex;
اگه هم مقدارشو میخوای از این دستور استفاده کنید:
codeindustry = cmbindustry.text;
امیدوارم درست متوجه شده باشم
-
نقل قول: مشکل null در کمبوباکس
ممنون بابت پاسختون اما بزارید روشن تر بگم
من چند تا کمبوباکس تو فرم دارم
حالا کمبوباکس دوم وابسته هست به اولی و سومی به دومی
حالا بر چه اساسی
مثلا
من تو کمبوباکس اول یک گزینه رو انتخاب می کنم این گزینه داخل دیتابیس با یک عدد مشخص هست مثلا عدد 1 پس مقدار selectvalue من برابر هست با 1
حالا من در کمبوباکس دوم مقادیری رو لود می کنم از دیتابیس که مقدار یک فیلدیشون برابر 1 باشه مثلا برای مثال کد شرکت هایی که در گروه 1 هستن
پس در رویداد indexchange کمبوباکس اول من این selectvalue رو میگیرم و می دم به یک کوئری تا فقط اون اطلاعات رو لود کنه
برای مثال کد کوئری
SELECT namecompany, codecompany, codem, codmain FROM dbo.company where codem=@valuei
و کد کمبوباکس اول هم
private void cmbindustry_SelectedIndexChanged(object sender, EventArgs e)
{
codeindustry = (int)cmbindustry.SelectedValue;
this.companyTableAdapter.codecompany(this.bourseDa taSetcmbcompany.company, codeindustry);{
ولی این خطا رو میده و حتی به راهنمایی دوستمون در قسمت properties در رویداد SelectionChangeCommitted کمبوباکس اول رو انتخاب کردم بازم مشکل حل نشد
برای اینکه مطمئن بشم خودم یه کد دیگه به این شکل زدم که شک دارم درسته اما اروری هم نمی داد
در کمبوباکس اول این کد رو وارد کردم
cmbindustry.SelectionChangeCommitted += cmbindustry_SelectionChangeCommitted;
و این کد رو داخل تابع رویداد جدید وارد کردم
private void cmbindustry_SelectionChangeCommitted(object sender, EventArgs e)
{
ComboBox cmbindustry = (ComboBox)sender;
//if ((bool)cmbindustry.SelectedValue == true) { cmbindustry.SelectedValue = cmbindustry.SelectedValue; }
codeindustry = (int)cmbindustry.SelectedValue;
this.companyTableAdapter.codecompany(this.bourseDa taSetcmbcompany.company, codeindustry);
}
البته به این تابع شک دارم دقیقا نمی دونستم چکارش کنم اما بازم خطا رو دارم
-
نقل قول: مشکل null در کمبوباکس
برای هر کمبو اول چک کن تعداد آیتم هاش صفر نباشد:
private void cmbindustry_SelectedIndexChanged(object sender, EventArgs e)
{
if (cmbindustry.Items.Count ==0 ) return;
codeindustry = (int)cmbindustry.SelectedValue;
this.companyTableAdapter.codecompany(this.bourseDa taSetcmbcompany.company, codeindustry);
}
-
نقل قول: مشکل null در کمبوباکس
ممنون بابت پاسخت اما بازم ارور رو میده
-
نقل قول: مشکل null در کمبوباکس
ولی به این شکل درست شد ممنون بابت راهنماییت
if (valuei == 0)
{
codeindustry = (int)cmbindustry.SelectedValue;
}
-
نقل قول: مشکل null در کمبوباکس
با سلام.
ابتدا چک کنید SelectedValue برابر NULL نباشد:
void Combo_SelectedIndexChanged(object sender,...e)
{
if(combo.SelectedValue==NULL)
return;
//else
//......
}
-
ارور در دستور foreach
سلام دوستان
یه groupbox داخل یه groupbox دیگه دارم میخوام مقدار کنترلای groupbox داخلی و تغییر بدم اما ارور میده. برا خارجیه این ارورو نمیده.
کد
foreach (System.Windows.Forms.Control myControl in this.Controls["groupBox4"].Controls)
{
if (myControl is TextBox)
{
(myControl).Text = "";
}
else if (myControl is ComboBox)
{
((ComboBox)(myControl)).SelectedIndex = 0;
}
else if (myControl is CheckBox)
{
((CheckBox)(myControl)).Checked = false;
}
}
ارورش
Object reference not set to an instance of an object.
مرسی:لبخندساده:
-
نقل قول: ارور در دستور foreach
نکته اول: چرا به این صورت نمی نویسی
foreach (System.Windows.Forms.Control myControl groupBox4.Controls)
نکته دوم :به این صورت تغییرش بده
var v = groupBox1.Controls["groupBox2"].Controls;
foreach (var item in v)
{
}
-
خطای System.NullReferenceException: Object reference not set to an instance of an object
من کدام رو از اکسس به اس کیوال تغییر دادم و حالا موقع اجرای برنامه ایراد می گیره. با اکسس هیچ مشکلی نبود.
ارورش هم در عنوان نوشته ام.
خود ارور رو در google سرچ کردم ولی چون انگلیسی بود چیزی متوجه نشدم.
تمام پرایمری کی ها و روابط جداول رو قرار دادم.
private void SearchLetters()
{
try
{
SqlConnection objconnection =
new SqlConnection("Data Source=.;Initial Catalog=Radman;Integrated Security=True;" +
" User ID=sa;Password=123456;");
SqlDataAdapter objDataAdapter = new SqlDataAdapter();
DataSet objDataSet = new DataSet();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = objconnection;
Condition = Condition.Trim();
if (Condition.StartsWith("AND")) Condition = Condition.Substring(3);
string cmd = @"SELECT tblErsali.ID,tblDaryafti.ID,tblErsali.LetterID,Sen derUserName,Subject,ReceiverUserName
,tabaghe,jahat,SendDate,SendTime,ErjaDate,ErjaTime ,mohlat,Dayes,bazgasht,peyrov,
IsRead,IsVarede
FROM tblErsali INNER JOIN tblDaryafti ON tblErsali.ID=tblDaryafti.LetterID WHERE " + Condition;
objDataAdapter.SelectCommand.CommandText = cmd;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
//MessageBox.Show(cmd);
objconnection.Open();
objDataAdapter.Fill(objDataSet, "tblLetter");
objconnection.Close();
dataGridView1.DataSource = objDataSet.Tables["tblLetter"];
dataGridView1.Columns["tblDaryafti.ID"].Visible = false;
dataGridView1.Columns["LetterID"].HeaderText = "شماره نامه";
dataGridView1.Columns["tblErsali.ID"].Visible = false;
dataGridView1.Columns["SenderUserName"].HeaderText = "فرستنده";
dataGridView1.Columns["Subject"].HeaderText = "موضوع";
dataGridView1.Columns["tabaghe"].HeaderText = "نوع";
dataGridView1.Columns["ErjaDate"].HeaderText = "تاریخ ارجاع نامه";
dataGridView1.Columns["ErjaTime"].HeaderText = "ساعت ارجاع نامه";
dataGridView1.Columns["SendDate"].HeaderText = "تاریخ ثبت نامه";
dataGridView1.Columns["SendTime"].HeaderText = "ساعت ثبت نامه";
dataGridView1.Columns["bazgasht"].HeaderText = "بازگشت به نامه شماره";
dataGridView1.Columns["peyrov"].HeaderText = "پیرو نامه شماره";
dataGridView1.Columns["ReceiverUserName"].HeaderText = "گیرنده";
dataGridView1.Columns["jahat"].HeaderText = "جهت";
dataGridView1.Columns["mohlat"].HeaderText = "مهلت پاسخ";
dataGridView1.Columns["Dayes"].HeaderText = "مهلت پاسخ";
dataGridView1.Columns["IsRead"].HeaderText = "خوانده شده";
foreach (DataGridViewRow r in dataGridView1.Rows)
{
if (r.Cells["LetterID"].Value.ToString() == "")
r.Cells["LetterID"].Value = r.Cells["tblErsali.ID"].Value.ToString();
r.Cells["SenderUserName"].Value = Program.chk.GetFullName(r.Cells["SenderUserName"].Value.ToString());
r.Cells["ReceiverUserName"].Value = Program.chk.GetFullName(r.Cells["ReceiverUserName"].Value.ToString());
}
}
catch (Exception)
{
MessageBox.Show("در ارتباط با بانک اطلاعاتی مشکلی پیش آمده است", "خطا درون بانک اطلاعاتی",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
-
نقل قول: بر طرف کردن ارور Object reference not set to an instance of an object
رو كدوم خط اين پيغامو ميده؟
-
نقل قول: بر طرف کردن ارور Object reference not set to an instance of an object
نقل قول:
نوشته شده توسط
hamid_hr
رو كدوم خط اين پيغامو ميده؟
من همیشه برای گرفتن ارور کنار catch یه برک پوینت می ذارم و ارورارو برطرف می کنم ولی اینو اصلاً نمی دونم چی می گه.
روی این خط ارور می گیره:
dataGridView1.Columns["tblDaryafti.ID"].Visible = false;
-
نقل قول: بر طرف کردن ارور Object reference not set to an instance of an object
این خط رو ببر بیرون یا آخر این بلاک احتمالا هنوز اون سطر مقداری نگرفته و شما سعی در مخفی کردنش دارید!!
-
نقل قول: بر طرف کردن ارور Object reference not set to an instance of an object
نقل قول:
نوشته شده توسط
esafb52
این خط رو ببر بیرون یا آخر این بلاک احتمالا هنوز اون سطر مقداری نگرفته و شما سعی در مخفی کردنش دارید!!
امکان نداره خالی باشه چون اون فیلد پرایمری کی هستش.
این کدارو من تو بانک اطلاعاتی اکسس جواب گرفتم و یک ماهی بود که تست می کردم ولی حالا که بردم رو SQL این ارور رو داره می ده.
تمامی relationهارو هم درست کردم.
برای این مخفی اش می کنم برای اینکه نیازی نیست کاربر اونو ببینه ولی من به دلایلی اون رو نیاز دارم.
-
1 ضمیمه
نقل قول: بر طرف کردن ارور Object reference not set to an instance of an object
جدیداً این ارور هم میده: رو همون خط
ضمیمه 112642
رو این خط ارور میداد پاکش کردم:
dataGridView1.Columns["tblDaryafti.ID"].Visible = false;
بعد رو این خط ارور می داد که اینم پاکش کردم:
dataGridView1.Columns["tblErsali.ID"].Visible = false;
بعد رو این خط ارور داد که اینم پاکش کردم:
r.Cells["LetterID"].Value = r.Cells["tblErsali.ID"].Value.ToString();
بعد درست شد.
ولی من اونارو نیاز دارم. چیکارش کنم؟
-
نقل قول: بر طرف کردن ارور Object reference not set to an instance of an object
دوست عزیز
احتیاج به پاک کردن نیست این خطایی که گذاشتین یعنی شی که شما سعی دارین باشی کارکنی هنوز ایجاد نشده معنی اش اینه که هنوز احتمالا گرید رو بصورت کامل پر نشده شما اینها رو بذار بعد یا خارج از این متد تست کن ببین چی میشه یه آزمایش کن با مسیج باکس ببین سعی کن یه سل از این ستون که مخفی اش کنی به مسیج باکس بفرست ببیبن چی نتیجه نمایش میده؟!
-
مشکل برای کپی دیتاگریدویو
سلام
من یه قطعه کد پیدا کردم که یه دیتاگریدویو رو توی یه دیتاگرید ویوی دیگه کپی می کنه.
اما اگه یه خونه از دیتاگرید ویوی مبدا خالی باشه پیغام ارور میده و نمی تونه توی دیتاگرید ویوی مقصد کپی کنه
دیتاگریدویوی 1 مبدا و دیتاگریدویوی 2 مقصد است.
if (dataGridViewX2.Columns.Count == 0)
{
foreach (DataGridViewColumn dgvc in dataGridViewX1.Columns)
{
dataGridViewX2.Columns.Add(dgvc.Name, dgvc.HeaderText);
}
}
dataGridViewX2.Rows.Clear();
foreach (DataGridViewRow dgvr in dataGridViewX3.Rows)
{
List<string> cells = new List<string>();
foreach (DataGridViewCell dgvc in dgvr.Cells)
{
cells.Add(dgvc.Value.ToString());
}
dataGridViewX2.Rows.Add(cells.ToString());
به خط cells.Add(dgvc.Value.ToString());
ارور میده
متن ارور: Object reference not set to an instance of an object.
ممنون میشم از راهنماییتون
-
نقل قول: بر طرف کردن ارور Object reference not set to an instance of an object
نقل قول:
نوشته شده توسط
esafb52
دوست عزیز
احتیاج به پاک کردن نیست این خطایی که گذاشتین یعنی شی که شما سعی دارین باشی کارکنی هنوز ایجاد نشده معنی اش اینه که هنوز احتمالا گرید رو بصورت کامل پر نشده شما اینها رو بذار بعد یا خارج از این متد تست کن ببین چی میشه یه آزمایش کن با مسیج باکس ببین سعی کن یه سل از این ستون که مخفی اش کنی به مسیج باکس بفرست ببیبن چی نتیجه نمایش میده؟!
سلکت رو اینجوری نوشتم:
SELECT tblErsali.ID AS EID,tblDaryafti.ID AS DID
و اینارم اینجوری نوشتم:
dataGridView1.Columns["DID"].Visible = false;
dataGridView1.Columns["EID"].Visible = false;
درست شد.
نمی دونم مشکلش با کلمات tblDaryafti.ID و tblErsali.ID چی بود؟
-
مشکل در Object reference ?
سلام دوستان یه برنامه نوشتم وقتی به خط زیر میرسه خطای
Object reference not set to an instance of an object.رو میده میشه راهنماییم کنید.:گریه:
((PictureBox)(this.Controls["pbPlayer" + i.ToString()])).Visible = true;
-
نقل قول: مشکل در Object reference ?
با سلام
کدت رو تریس کن. احتمالا به ازای مقادیری از i کنترلی که میخواهی وجود نداشته باشه
-
خطای object reference
سلام دوستان لطفا کمکم کنید
من دو بار vs2010 را پاک و مجددا نصب کرده ام اما مشکلم رفع نشده و خطای object reference not set to an instance of an object را می دهد
https://barnamenevis.org/image/png;ba...AASUVORK5CYII=
علت را توی پست ها گشتم اما نتونستم این مشکل را رفع کنم با اینکه در برنامه ام دو فرم و یک باتون قرار دادم هنگامی که برنامه اجرا شده را می بندم این خطا را می دهد خواهشا دوستانی که با این مشکل برخورد کرده اند بگویند چطور و با چه سورس کدی این مشکل را برطرف کنم
-
نقل قول: خطای object reference
کد؟
عکس؟
کاری که میخواتسید انجام بدید و این اتفاق افتاده؟
-
2 ضمیمه
نقل قول: خطای object reference
دوست عزیز
این مشکل برای من در چند موقع رخ می ده
1 - هنگامی که فرم 2 را با showdialog باز می کنم و به محض بستن فرم اول که فرم دسترسی ام است این مشکل پیش میاد مجبور شدم از show استفاده کنم
2- حال هنگامی که فرم 2 را مینمایز می کنم با کلیک روی کلید customer از فرم 1 فرم مینمایز شده به نام فرم 2 ماکزیمایز شده برای بار دوم که فرم 2 انرا مینمایز می کنم و می خواهم از فرم 1 انرا ماکزیمایز یا نرمال کنم این مشکل پیش می اید
ضمیمه 112874ضمیمه 112875
[CSHARP][/CSHARP]
-
نقل قول: خطای object reference
فرم 1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Windows.Forms;
using System.IO;
namespace Accounter
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void glassButton7_Click(object sender, EventArgs e)
{
lsitem.Visible = true;
lsuser.Visible = false;
}
private void btncustomer_Click(object sender, EventArgs e)
{
Form2 customer = new Form2();
if (Application.OpenForms["Form2"] == null)
{
customer.Show();
}
else
{
Application.OpenForms["Form2"].WindowState = FormWindowState.Normal;
Application.OpenForms["Form2"].Activate();
}
}
private void Form1_Load(object sender, EventArgs e)
{
user.Focus();
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
if (MessageBox.Show("آيا شما مي خواهيد از برنامه خارج شوید ؟", " خروج از برنامه", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
Application.Exit();
}
private void glassButton2_Click(object sender, EventArgs e)
{
}
}
}
فرم 2-------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Accounter
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
ra_code.Checked = true;
//disable();
}
public void disable()
{
//txt_adress.Enabled=false;
// txt_code.Enabled=false;
// txt_id.Enabled=false;
// txt_mobile.Enabled=false;
// txt_money.Enabled=false;
// txt_name.Enabled=false;
// txt_phone.Enabled=false;
//data.Enabled=false;
}
private void btn_search_Click(object sender, EventArgs e)
{
if (search.Visible) search.Visible = false;
else
{
search.Visible = true;
numericUpDown1.Focus();
}
}
private void ra_code_CheckedChanged(object sender, EventArgs e)
{
if (ra_code.Checked)
{
txt_searchname.Enabled = false;
txt_searchname.BackColor = Color.WhiteSmoke;
numericUpDown1.Enabled = true;
numericUpDown1.BackColor = Color.White;
data_search.Enabled = false;
data_search.BackColor = Color.WhiteSmoke;
}
}
private void ra_customer_CheckedChanged(object sender, EventArgs e)
{
if (ra_customer.Checked)
{
txt_searchname.Enabled = true;
txt_searchname.BackColor = Color.White;
txt_searchname.Focus();
numericUpDown1.Enabled = false;
numericUpDown1.BackColor = Color.WhiteSmoke;
data_search.Enabled = false;
data_search.BackColor = Color.WhiteSmoke;
}
}
private void ra_data_CheckedChanged(object sender, EventArgs e)
{
if (ra_data.Checked)
{
txt_searchname.Enabled = false;
txt_searchname.BackColor = Color.WhiteSmoke;
numericUpDown1.Enabled = false;
numericUpDown1.BackColor = Color.WhiteSmoke;
data_search.Enabled = true;
data_search.BackColor = Color.White;
}
}
private void btn_new_Click(object sender, EventArgs e)
{
// enable();
}
private void Form2_FormClosed(object sender, FormClosedEventArgs e)
{
}
}
}
-
نقل قول: خطای object reference
نقل قول:
نوشته شده توسط
FastCode
لطفا کدتون رو در تگ CODE یا CSHARP بزارید
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Windows.Forms;
using System.IO;
namespace Accounter
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void glassButton7_Click(object sender, EventArgs e)
{
lsitem.Visible = true;
lsuser.Visible = false;
}
private void btncustomer_Click(object sender, EventArgs e)
{
Form2 customer = new Form2();
if (Application.OpenForms["Form2"] == null)
{
customer.Show();
}
else
{
Application.OpenForms["Form2"].WindowState = FormWindowState.Normal;
Application.OpenForms["Form2"].Activate();
}
}
private void Form1_Load(object sender, EventArgs e)
{
user.Focus();
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
if (MessageBox.Show("آيا شما مي خواهيد از برنامه خارج شوید ؟", " خروج از برنامه", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
Application.Exit();
}
private void glassButton2_Click(object sender, EventArgs e)
{
}
}
}