كيف تظهر لك قائمة سياق مستكشف ويندوز من C# التطبيق ؟
-
19-08-2019 - |
سؤال
لدي ملف الإدراج في طلبي و أود أن تسمح للناس انقر بزر الماوس الأيمن فوق عنصر وتظهر قائمة سياق مستكشف ويندوز.أفترض كنت بحاجة إلى استخدام IContextMenu واجهة, ولكن أنا لست متأكدا من أين تبدأ.
المحلول
هناك برنامج تعليمي جيد جدا (وإن كان في C++) عن استضافة IContextMenu على ريمون تشن بلوق في 11 أجزاء (بالترتيب):
نصائح أخرى
ولقد كتب المكتبة التي قد تكون قادرة على مساعدتك. هل يمكن استخدام عناصر التحكم التي تقدمها المكتبة، أو إذا كنت لا تريد أن تفعل ذلك، وتبحث من خلال رمز قد تعطيك جوابا.
ويمكنك العثور على المكتبة في: http://gong-shell.sourceforge.net/
واسمحوا لي أن أعرف إذا ساعد ذلك!
ولقد وجدت مقالا مشروع قانون العظيمة التي تلخص كل شيء بشكل جيد للغاية في فئة واحدة!
وانها سهلا كما في التعليمات البرمجية المتكررة التالية:
// Sample code
ShellContextMenu ctxMnu = new ShellContextMenu();
FileInfo[] arrFI = new FileInfo[1];
arrFI[0] = new FileInfo(this.treeMain.SelectedNode.Tag.ToString());
ctxMnu.ShowContextMenu(arrFI, this.PointToScreen(new Point(e.X, e.Y)));
والشيء المزعجين الوحيد هو ان الامر يستغرق إما مجموعة من FileInfo [] أو مجموعة من DirectoryInfo [] على الرغم من أنه كان من السهل جدا لتعديل مصدر قليلا بحيث تأخذ مجموعة من FileSystemInfo []