دورة سي شارب С# Course

Sunday, September 7, 2014

سي شارب - الدرس الثاني والثلاثون - Toolbox - FolderBrowserDialog

فيديو 108 -109 -110 


فيديو 108
Dialog Toolbox -FolderBrowserDialog :
- اسحبي هاي الـ Toolbox من خانة الـ dailogs الموجودة الى الفورم



// اكتبي التالي داخل الـevent الخاص بالـ buttton


FolderBrowserDialog1.ShowDialog();

// افتح شاشة اختيار المجلد 

String [] s= Directory.GetFiles(FolderBrowserDialog.SelectedPath);

// اختار المجلد اللي بدك توخد منه الملفات في مسار معين (اختار الباث تبعه) ، وبعدين جوا المجلد فكك الملفات جواه ، هاي الملفات راح يوخدها ويحطها في مصفوفة من نوع سترينج





---------------------------------------------------------------------------------------------------------------------

foreach (string item in s)
{
listBox1.Items.Add(item);
// لكل عنصر من هاي الملفات في المجلد خده وحطه في المستطيل.
// المشكلة اسم الصور راح يطلع كامل ومش حلو بدنا نعدل عليه ، هلأ بدنا نتحكم بالشكل اللي بطلع بالليست بوكس (فيديو109)


}






----------------------------------------------------------------------------------------------------------------------
foreach (string item in s)
{
listBox1.Items.Add (path.GetFileNameWithoutExtension.item);
// هاي الدالة اللي ضفتها راح تعدل شكل اسم الملفات اللي عندي
// المشكلة في ملفين زيادة وهما : desktop - thumps ، موجودين تلقائيا في الملفات المخفية ، هلأ بدنا نحذفهم هادول الاتنين 
}

----------------------------------------------------------------------------------------------------------------------
foreach (string item in s)
{
// هاي ال if راح تخليني احذف الملفين الزيادة اللي ما بدي ياهم

if (  (path.GetExtension(item) !=".ini") && (path.GetExtension(item) !=".dp"))
{
// لو طلع معاكي logic error  اضغطي اول اشي F5 وبعدين F11
listBox1.Items.Add(path.GetFileNameWithoutExtension.item);
}
}


----------------------------------------------------------------------------------------------------------------------

 (فيديو 110) بدي لو علّـمت على اي صورة من الصور الموجودة في الـ ListBox يحطها في الـ pictureBox اللي على الجنب . 

- بدي مخزن اخزن فيه مسارات الملفات . (راح أحتاج إلى list منفصلة غير المصفوفة اللي كانت عندي من أول ، وغير ال listBox الموجودة كمان )  ، هاي ال list الجديدة راح احتاجها عشان اعرض الصور الموجودة عندي في listBox على شكل أسماء.

- روحي على ال ListBox واضغطي عليه مرتين ، راح يفتح معاكي الكود تبع الحدث الخاص بتغيير اي اختيار من الاختيارات المتاحة للـ List واسمه  SelectedIndexChanged 

واكتبي التالي داخل ال event الخاص بالـ list Box : 

pictureBox1.Image = new Bitmap (؟؟؟؟);

// ???? == راح احط فيها مسار الصورة اللي بدي ياها والموجودة في الـ items في الevent تبع ال button   فوق،  عشان هيك لازم اعمل list لحالها منفصلة فوق ) ;

// بدي أنشأ list أحدد فيها مسارات الصور ، حأروح فالكلاس بالفورم فوق قبل ال events واكتب التالي : 

List <string> l = new List <string> () ;

// هيك انشأنا list وهي عبارة عن مكان احنا مش عارفين شو الحجم تبعها وعارفين الداتا تايب تبعها .



// هلأ ارجع تان للـ foreach في الevent تبع ال button
foreach (string item in s)
{
if (  (path.GetExtension(item) !=".ini") && (path.GetExtension(item) !=".dp"))
{
listBox1.Items.Add(path.GetFileNameWithoutExtension.item);

l.Add(Path.GetFullPath(item);
// هات المسار الكامل لكل صورة وحطها في الــ list الجديدة ، هيك حددت مسارات الصور الي بدي ياها 
}
}

// هلأ روحي تان على ال event تبع ال listBox وكملي الكود التالي :: 

pictureBox1.Image = new Bitmap( l [listBox1.Selectedindex]

// بدي احدد الصورة اللي واقفه عليها ، هون بالدالة هاي حددت المكان للصورة اللي واقفة عليها ، اعملي تتبع بال f5 ، اي حاجة راح اختارها في الـ listBox راح تتحدد في الـ list

pictureBox1.SiteMode = PictureBoxSizeMode.StretchImage;

// هاي الدالة عشان تزبط حجم الصورة مع العرض تبعها.




No comments:

Post a Comment