تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] [تم الحل] مشكلة اضافة عناصر الي ListView
#1
السلام عليكم


عندي

كود :
Public Class JSON_result

       Public Property pk() As String

       Public Property username() As String

       Public Property full_name() As String

       Public Property is_private() As String

       Public Property profile_pic_url() As String

       Public Property profile_pic_id() As String

       Public Property is_verified() As String

       Public Property has_anonymous_profile_picture() String

       Public Property latest_reel_media() As String

   End Class


واقوم بجلب البيانات عبر

Dim mgdata = JsonConvert.DeserializeObject(Of JSON_result)(data)


واحاول اضافة العناصر لليست فيور عبر

ListView1.Items.Add(New ListViewItem({mgdata.Pk.ToString(), mgdata.Username, mgdata.FullName.ToString()}))

ولكن يظهر خطأ بسبب ان mgdata.FullName = nothing


كيف يمكن تخطي هذه المشكلة
الرد }}}
#2
Public Property full_name() As String

ListView1.Items.Add(New ListViewItem({mgdata.Pk.ToString(), mgdata.Username, mgdata.full_name.ToString()}))
الرد }}}
#3
(03-06-20, 11:15 PM)aljzazy كتب : Public Property full_name() As String

ListView1.Items.Add(New ListViewItem({mgdata.Pk.ToString(), mgdata.Username, mgdata.full_name.ToString()}))

للاسف نفس الخطأ
{"Object reference not set to an instance of an object."}

لما بحذف , mgdata.FullName.ToString()
بيشتغل بدون مشكلة
المشكلة ان بعض المتغيرات لما يكون ليس لها قيمة تعود ب nothing لذا يحدث الخطأ
لذا ابحث عن حل
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#4
شكرا لكم جميعا
تم ايجاد الحل في موقع اخر وهو

وعليكم السلام

المشكله هي انك تقوم بتحويل المتغير الي String عن طريق toString
وفي الكود قلت ان الـ متغير ممكن ان يكون Nothing or Null

فما يحدث انك تحاول تحويل Nothing لاشئ الي string فيحدث خطا

السؤال هو لماذا تحاول تحويل الـ FullName الذي نوعه String الي String

لا داعي للتحويل
لذا يمكنك تغير الكود الي
لا داعي لاستخدام ToString مع FullName كما هو الحال لديك مع Username

كود:

ListView1.Items.Add(New ListViewItem({mgdata.Pk.ToString(), mgdata.Username, mgdata.FullName}))

و يمكنك ايضا ان تقوم بعمل شرط اذا اردت وضع قيمه افتراضيه مثلا

كود:

If mgdata.FullName Is Nothing Then
mgdata.FullName="No Name" 'تضع قيمه افتراضيه تظهر للمستخدم
End If
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة في ربط الفيجوال بيسك 2013 مع الاكسل صالح عبدالله 7 86 منذ 11 ساعة مضت
آخر رد: صالح عبدالله
  مشكلة فى Radiobutton عند وضع صورة فيه أبو جودة 3 88 15-04-24, 04:31 AM
آخر رد: Taha Okla
  اريد اضافة حفظ PDF فى مسار على الهارد- مثال الاستاذ عبدالله الدوسري new_programer 0 49 13-04-24, 12:59 PM
آخر رد: new_programer
  [سؤال] لدي مشكلة عند قراءة ملف نصي من خلال أداة RichBox , حيث تظهر لي علامات استفهام Mostchar 2 153 07-04-24, 02:51 PM
آخر رد: تركي الحلواني
  مشكلة في التايمر assuhimi 3 126 23-03-24, 04:51 PM
آخر رد: Taha Okla
  [سؤال] مشكلة اتصال مفتوح dell 2 172 12-03-24, 09:46 PM
آخر رد: dell
  مشكلة عند نقل البرنامج من فيجوال 2013 الى فيجوال 2017 strongriseman 5 157 12-03-24, 10:37 AM
آخر رد: strongriseman
  مشكلة فى جمع عمود فى داتا جريد فيو احمد خطاب 3 167 06-03-24, 07:49 PM
آخر رد: احمد خطاب
Photo [VB.NET] مشكلة في شكل الفورم abuyazan 5 307 27-02-24, 09:38 PM
آخر رد: aljzazy
  [VB.NET] مشكلة فى رفع الفاتورة asdfar1977 5 176 25-02-24, 02:04 PM
آخر رد: asdfar1977

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم