منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] انشاء متغير في الـ Settings من نوع خاص - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [سؤال] انشاء متغير في الـ Settings من نوع خاص (/showthread.php?tid=1683)



انشاء متغير في الـ Settings من نوع خاص - ali.alfoly - 24-01-14

السلام عليكم ورحمة الله
هل من الممكن انشاء متغير في الـ Settings من نوع خاص
اعرف انه يمكن ذلك عن طريق

ثم ستظهر المكتبات

ولاكن كيف لو المكتبة في نفس المشروع وليست في مشروع مضاف
وجزاكم الله خيرا



RE: انشاء متغير في الـ Settings من نوع خاص - ربيع - 24-01-14

نحمده ونصلي على رسوله الكريم

استخدم النوع object وعند التعامل معه استخدم دوال التحويل ctype
او ادخل لكود الاعدادات واكتب فيه ما تشاء


RE: انشاء متغير في الـ Settings من نوع خاص - ali.alfoly - 24-01-14

جزاك الله خيرا اخي ربيع علي ردك
بالنسبة للنوع object غير موجود في الـ Settings انظر الصورة الاولي

إقتباس :او ادخل لكود الاعدادات واكتب فيه ما تشاء

ارجو شرح او توضيح هذه المعلومة



RE: انشاء متغير في الـ Settings من نوع خاص - Aly El-Haddad - 24-01-14

النوع Object موجود داخل مكتبة mscorlib في الـNamespace System
لكني جربت أن أستخدم النوع Object مع Class للتجربة لكن ظهر خطأ عند التجربة


RE: انشاء متغير في الـ Settings من نوع خاص - ali.alfoly - 24-01-14

جزاك الله خيرا اخي الكريم Aly El-Haddad علي ردك واعلامنا بتجربتك
طيب في انتظار توضيح الاخ ربيع للنقطه
إقتباس :او ادخل لكود الاعدادات واكتب فيه ما تشاء
او انتظار اي احد من الاخوة يكون وصل لحل في ذلك
وجزاكم الله خيرا



RE: انشاء متغير في الـ Settings من نوع خاص - ربيع - 24-01-14

نحمده ونصلي على رسوله الكريم

ما نوع المتغير؟ هل هو كلاس مثلا؟


RE: انشاء متغير في الـ Settings من نوع خاص - ali.alfoly - 25-01-14

نعم اخي ربيع هو كلاس


RE: انشاء متغير في الـ Settings من نوع خاص - ربيع - 25-01-14

نحمده ونصلي على رسوله الكريم

اضف متغير في الإعدادات من نوع byte ثم افعل كما بالصور:









عدل الكود ليصبح المتغير من نوع مصفوفه بايت باضافة الأقواس

ثم استخدم الكود التالي لحفظ المتغير في الإعدادات:

كود :
Dim c As New Class1()
c.Name = "Ali"
My.Settings.Test = ToByteArray(c)
My.Settings.Save()

والتالي لاسترجاعه:

كود :
Dim c As Class1 = FromByteArray(My.Settings.Test)
MessageBox.Show(c.Name)

واضف الكود التالي للتحويل:

كود :
Private Function ToByteArray(c As Class1) As Byte()
    If (c Is Nothing) Then Return Nothing

    Dim bf As New BinaryFormatter()
    Dim ms As New MemoryStream()
    bf.Serialize(ms, c)
    Return ms.ToArray()
End Function

Private Function FromByteArray(arrBytes As Byte()) As Class1
    Dim ms As New MemoryStream()
    Dim bf As New BinaryFormatter()
    ms.Write(arrBytes, 0, arrBytes.Length)
    ms.Seek(0, SeekOrigin.Begin)
    Dim c As Class1 = CType(bf.Deserialize(ms), Class1)
    Return c
End Function



RE: انشاء متغير في الـ Settings من نوع خاص - ali.alfoly - 25-01-14

جاري التجربة
جزاك الله خيرا اخي ربيع