PDA

View Full Version : اینترفیس IList



Sajjad1364
سه شنبه 09 مرداد 1386, 19:17 عصر
با سلام

بیشترین کاربرد این اینترفیس در کار با دیتاگرید می باشد.در کل تمامی عملیاتهای بایند کردن با این اینترفیس سرو کار دارد .یکی از راه های انتقال اطلاعات به درون دیتا گرید ها استفاده از این اینترفیس می باشد. شما میتوانید هر شیی را به دیتاگرید وصل کنید در صورتیکه آن شئ این رابط را پیاده سازی کرده باشد.
مثلا میتوان آرایه ای را به دیتاگرید وصل کرد.چون کلاس System.Array این رابط راپیاده سازی کرده و نیز مشتق شدن تمام آرایه ها از کلاس System.Array پس هر آرایه را میتوان به دیتا گرید متصل کرد.
یعنی :



string [] s=new string[5];

dataGridView1.DataSource = s;




خیلی از موقعیت ها پیش می آید که ما خواستار نمایش اطلاعات مثلا در دیتاگرید هستیم.
به مثال زیر توجه کنید:
مثلا فرض کنیم می خواهیم اطلاعات مربوط به درایوهای هارد دیسک را در یک دیتاگرید ببینیم.برای مقید کردن این داده ها به دیتاگرید باید شیی را برای این ارتباط پیدا کنیم.به عنوان مثال از کلاس ComboBox.ObjectCollection استفاده می کنیم.این کلاس اینترفیس IList راخود مستقیما پیاده سازی میکند و مجموعه ای از آیتم ها را برای اشیاء ComboBox آماده می کند.ما میتوانیم با استفاده از کلاس System.IO.DriveInfo اطلاعات تمام درایوها را توسط متد GetDrives() بدست آوریم




DriveInfo[] d = System.IO.DriveInfo.GetDrives();



سپس تمام درایوهایی که از نوع Fixed(درایوهای منطقی)هستند را به شئComboBox.ObjectCollection اضافه می کنیم .در مرحله آخر این شئ که اینترفیس IList را پیاده سازی میکند ,به دیتاگرید وصل می کنیم.




ComboBox.ObjectCollection hardDrives = newComboBox.ObjectCollection(newComboBox());
for (int i = 0; i < drives.Length; i++)
if (drives[i].DriveType == DriveType.Fixed)
hardDrives.Add(drives[i]);
dataGridView1.DataSource =hardDrives;



توجه:برای ایجاد کردن ComboBox.ObjectCollection باید از یک ComboBox در سازنده استفاده کنیم.
با این اینترفیس میتوان کارهای بسیاری را در زمینه داده ها انجام داد.این مثال هم گوشه ای از توانایی های این اینترفیس می باشد.