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

مشكلة فى VS 2010

بدأه GHOST2010 في 2 يونيو 2011 · 23 رد · 1,510 مشاهدة · في قسم تكنولوجيا Microsoft .NET العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

ظهرت معى مشكلة غريبة جدا فى فيجوال ستوديو 2010

المشكلة تتلخص فى الآتى

قمت بعمل مشروع جديد يحتوى على مشروع من النوع Class Library وآخر من النوع Windows Forms

المشروع الأول يحتوى على واجهة تسمى IBindableControl و مجموعة أدوات تستخدم هذه الواجهة وأداة ترث ToolStrip باسم UIDataNavigator

هذه الأداة الأخيرة هى التى لب (بضم اللام :D) الموضوع حيث أنها تستخدم الواجهة IExtenderProvider لإضافة خاصية جديدة باسم SourceProperty للأدوات التى تستخدم الواجهة IBindableControl

عند بناء المشروع كان كل شئ يسير على مايرام لكن عندما أغلقت المشروع ثم فتحته من جديد لم تظهر الخاصية الموسعة SourceProperty التى تمت إضافتها للأدوات فى نافذة الخصائص ,, قمت بإعادة بناء المشروع ولم تظهر

وعندما أضيفها يدويا فى Form1.Designer.vb مثلا بهذا الشكل

Me.MainNavigator.SetSourceProperty(Me.txtID, "ID")

يختفى هذا السطر من الكود :blink:

الأغرب من ذلك أن الخاصية أحيانا تظهر لكن لا أدرى متى تظهر ومتى تختفى :wacko:

قمت بعمل Feedback لميكو لكن لم يفيدونى بشئ

هذا ملف مضفوط يحتوى على 4 صور ربما توضح المشكلة

http://www.code-castle.com/bug-in-propertygrid/snapshots.rar

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#2

تحتاج لإضافة السورس كود للتجربه :P - (معنديش VS 2010).

مدونتي: C++ Tips and Tricks

#3

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

اخي ارفق مشروعك ليتم النظر فيه ..

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

#4

ده مثال يوضح المشكلة رفعته لميكو

Demo.rar

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#5

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

اخي قمت بالتعديل في المشروع وعملت اداة اخرى UILabel ستلاحظ ظهور خاصيه مضافه له عندما يكون UIDataNavigator موجود على الفورم

Demo.zip

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

#6
VB Helper كتب:

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

اخي قمت بالتعديل في المشروع وعملت اداة اخرى UILabel ستلاحظ ظهور خاصيه مضافه له عندما يكون UIDataNavigator موجود على الفورم

المشروع عندى ملئ بالأدوات التى تستخدم الواجهة IBindableControl والتى من المفترض أن يتم إضافة الخاصية إليها

المشكلة أن الخاصية تظهر أحيانا وتختفى أحيانا (راكبها عفريت)

أخى VB Helper

شاكر لك مساعدتك لكن التعديل الذى قمت بعمله لا يفيدنى بشئ لأنى أريد إضافة الخاصية لأى أداة تستخدم الواجهة IBindableControl وليس لنوع محدد من الأدوات :sad:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#7

اكشتفت متى تظهر ومتى تختفى لكنه شئ غريب جدا

عندما أفتح المشروع تظهر الخاصية بلا أى مشكلة لكن لو قمت بعمل Rebuild للمشروع الذى يحتوى على الأدوات تختفى الخاصية ولابد من إعادة تشغيل الفيجوال ستوديو حتى تظهر مرة أخرى :blink:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#8

المشكلة تظهر معى مع أى أداة توفر خاصية إضافية للأدوات ,, الخاصية تختفى عند عمل Rebuild وتظهر عند إعادة تشغيل الفيجوال ستوديو :unsure:

وميكروسوفت مطنشة :mad:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#9

أعمل feedback لفريق تطوير الفيجوال ستديو و هما ه6ل%Eولوا لك تعمل ايه

مدونتي: C++ Tips and Tricks

#10

انا فتحت موضوع عندهم وطلبوا منى مشروع فيه المشكلة ورفعت المشروع ده ولا عبرونى بعدها

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#11

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

اخي ان شاء الله اقول انحلت المشكله, ارفقت لك المشروع بعد التعديل واضفت فيه UTextBox و TextBox للتأكد من ظهور الخاصيه في الاول الذي هو يطبق الواجهه IBindableControl وقم بعمل Rebuild اكثر من مره للتأكد

Demo.zip

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

#12

السلام عليكم.

جرب تحمل VS 2010 SP1 قد تحل المشكلة.

#13

انا فعلا منزل sp1 على الجهاز

@VB Helper

غدا إن شاء الله أراجع التعديل عند ذهابى إلى العمل

أهم شئ لا يتم تغيير السطر

<ProvideProperty("SourceProperty", GetType(IBindableControl))>

لو تم تغيير هذا السطر فهذا لن يحل المشكلة بالنسبة لى وإلا كنت فعلتها من البداية :wink:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#14

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

اخي نعم عدلتها ولكن قدرت اجعل فقط الاواد التي تطبق الواجهه IBindableControl هي التي تحصل على الخاصيه المراده بعد ال Extension

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

#15

بدل ان الخاصيه بتختفي مع عمل ReBuild ده معناه ان المشكله موجوده فى الـ CodeDOM Serializer الخاص بالـ Windows Forms مع أداواتك.

المشكله دى كانت بتقابلني بس بشكل مختلف و حلها هو انك تعمل Custom Serializer لأدواتك علشان الـ Windows Forms Serializer يستخدمه بدلا من الإفتراضي.

انا كنت كتبت واحد زمان هتلاقيه فى المرفقات بس تقريبا مش فاكر حاجه عن الكود لذا اعتمد على نفسك علشان تفهمه، الكود فى المرفقات.

انا فاكر انك كنت لازم تمرر نوع الفئه دى لـ attribute معينه، حاجه زى كده:

<SomeAttribute( GetType( BaseBindCodeDomSerializer ) )> _
Public Class MyCompoenent
    Interits Compoenent
    Implements IExtenderProvider

   ' Some Woo Magic here


End Class

بس طبعا متعتمدش على كلامي لإن الفئه دى كنت كتبتها من 3 سنين، دور على النت ازاى تعمل Custom Serializer و هتلاقي خطوات تطبيقه.

BaseBindCodeDomSerializer.rar

و الله ولي التوفيق

مدونتي: C++ Tips and Tricks

#16

أنا هاريح نفسى من وجع الدماغ ده كله وهاجبر الناس انهم يكتبوها فى الكود :)

Me.Navigator.SetSourceProperty(Me.txtID, "ID")

انا هاقرف نفسى ليه اذا كانت ميكروسوفت مكبره دماغها :excl:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#17

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

اخي هل جربت الكود المرفق؟!!

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

#18

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

غيرت

<ProvideProperty("SourceProperty", GetType(IBindableControl))>

إلى

<ProvideProperty("SourceProperty", GetType(Control))>

وهذا مافعلته أنت أيضا لكنك غيرت فى أماكن أخرى لكن هذا التعديل كان كافيا :)

والآن السؤال الذى يطرح نفسه ,, هل هناك عداوة بين الفيجوال ستوديو والواجهات؟ :lol:

تم تعديل هذه المشاركة بواسطة GHOST2010 في 8 يونيو 2011 في 14:56

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#19

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

اخي غيرت حاجتين الكود المذكور سابقا بالاضافه الى الداله CanExtend!!

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

#20

ميكروسوفت ردت عليا فى الموضوع اللى كتبته عندهم أخيرا وبعد طول انتظار الراجل بتاعهم قال

Thank you for reporting this issue. Customer feedback is a critical part of a successful, impactful software product. Unfortunately another part is the reality of schedules and the need to prioritize investments according to the objectives of the product. We have evaluated the issue that you have reported and at this point in the product's lifecycle, it does not meet the criteria to be addressed. This evaluation is carefully done and considers many aspects including the cost of the fix, implications of the change, and the number of reported instances of the issue.

وتبا لميكروسوفت

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#21

ههههههه متزعلش نفسك كده، صحتك مهمه، حقيقي حلوه منهم بس اكيد هيصلحوها و هينزلوها مع SP2، لحد الوقت ده ممكن ترجع تاني لـ VS 2008 او خليك زي ما انت.

مدونتي: C++ Tips and Tricks

#22

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

اخي شغال معي 100% وحتى بعد ال Rebuild, وهذا الدالة بعد التغيير


Public Function CanExtend(ByVal extendee As Object) As Boolean Implements System.ComponentModel.IExtenderProvider.CanExtend
If GetType(IBindableControl).IsAssignableFrom(extendee.GetType()) Then
Return TypeOf extendee Is Control
End If
End Function

طبعا كل شيء موجود في المرفق اعلاه

تم تعديل هذه المشاركة بواسطة VB Helper في 12 يونيو 2011 في 21:26

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

#23

أخى VB Helper ,, تم حل المشكلة بفضل الله

أنا فقط أوضح سياسة ميكروسوفت فى متابعة الأخطاء :lol:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#24

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

بالتوفيق اخي ..

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

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