سؤال

لدي حل مع العديد من المشاريع.يحتوي مشروع واحد على عدد قليل من المكونات المخصصة.يتم استخدام أحد هذه المكونات لعرض عنوان على الصورة.يمكننا تغيير لون الخلفية وأشياء أخرى كثيرة.

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

في الوقت الحالي، ما يجب علي فعله هو إزالة المكون من المشروع الآخر واحدًا تلو الآخر وإضافته مرة أخرى، وبعد ذلك كل شيء على ما يرام.هل لديك طريقة سريعة للقيام بذلك؟

تحديثلقد أضفت CheckBox داخل هذا المكون ويبدو أن مربع الاختيار موجود في كل مكان!بخير!ولكن عندما تحتوي خاصية ما على علامة تسمح للمكون بالتغيير (على سبيل المثال، لون الخلفية)، فإنها لا تغير القيمة "الافتراضية" ولكن بدلاً من ذلك تضع القيمة القديمة كقيمة متغيرة في الخاصية.لذلك، أرى أن القيمة القديمة تم ضبطها كما لو قمت بإضافة اللون يدويًا في لوحة الخصائص عندما لم...

تحديث 2 نص بديل http://img517.imageshack.us/img517/9112/oldonenewoneei0.png

التحديث 3:

هذه المشكلة لا تزال هنا.فقط لإخبار الناس أنني لا أزال أشعر بالفضول للعثور على طريقة.

لقد حاولت عدد قليل من اقتراحاتكم.

  1. إذا قمت بتنظيف كل الحلول وقمت ببناء المشروع الذي يحتوي على عنصر التحكم المخصص فقط، فأنا أقوم ببناء الحل.لم يتغير شيء (لاختباره، قمت بتغيير لون المكون إلى اللون الأصفر.لا شيء يتغير : يفشل.
  2. إذا قمت بإزالة المرجع وإضافته مرة أخرى إلى المشروع ثم إعادة بناء الحل.أستطيع أن أرى اللون القديم في المصمم: يفشل.

لقد قمت بتحديث السؤال بمزيد من المعلومات والصورة (أعلاه) لأولئك الذين يريدون محاولة مساعدتي.

كما ترون، يُظهر "التحويل البرمجي" القديم للمكون الخلفية الصفراء ولكن عندما أقوم بإدراج مكون جديد (من شريط الأدوات الأيسر في Visual Studio) يمكنني الحصول على المكون الجديد بالخلفية البيضاء المفترضة...

هل كانت مفيدة؟

المحلول

هذا على الأرجح بسبب مراجع.

مشاريعك الأخرى على الأرجح نسخة في مرجع لمشروع المكون الخاص بك.سيتعين عليك إعادة بناء هذه المشاريع الأخرى حتى تتمكن من إعادة نسخها في مشروع المكون المشار إليه، إذا تم تغييره.يتم تحديثه فقط في وقت البناء.

يمكنك التغلب على هذا إلى حد ما من خلال جعلهم جزءًا من نفس الحل.في هذه الحالة، يمكنك إعداد الخاص بك تبعيات المشروع بشكل صحيح ويجب أن يتعامل مع الأمور نيابةً عنك تلقائيًا في الغالب.لكن وجود كل شيء في نفس الحل ليس دائمًا هو الشيء الصحيح الذي ينبغي عمله.

إذا كانت لديك بالفعل جزءًا من نفس الحل أو أنها ليست مشكلة مراجع، فقد يكون ذلك بسبب تسلسل المكونات.لقد واجهنا هذه المشكلة كثيرًا عند القيام بتطوير التحكم المخصص.

نصائح أخرى

أعتقد أن المصمم ذكي ويتذكر إعدادات المكون كما هي موجودة في المصمم وبالتالي يراها على أنها الإعداد الافتراضي.

هذا لا يبدو معتاداً.قد يساعد النقر بزر الماوس الأيمن على الحل والضغط على "Clean Solution" (سيؤدي ذلك إلى حذف جميع ملفات dll والملفات التنفيذية من دليل سلة كل مشروع، مما يفرض إنشاءات جديدة)

قد ترغب أيضًا في التحقق من تسلسل أمر البناء الخاص بك.

أنا أعمل في مشروع به مشكلة مماثلة، وقد وجدت أنه إذا قمت بلمس ملف التكوين .NET أو ملف معلومات التجميع (حسب نوع مشروعك).ستعكس المشاريع الأخرى بعد ذلك تغيير المكونات ...

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

لقد قمت مؤخرًا بالتبديل إلى بناء كل شيء عبر Nant، وهذا يحل المشكلة تمامًا.

في بعض الأحيان يقوم المصمم المرئي بإجراء تسلسل لجميع خصائصك في الكود الخلفي، حتى لو كانت لها القيمة الافتراضية.

إذا كان للمكون الخاص بك لون خلفي افتراضي هو الأحمر، وقمت بتغيير اللون الخلفي الافتراضي إلى الأزرق، فإن المكونات التي تستخدم المكون الخاص بك ستغيره مرة أخرى إلى الأحمر.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top