کنترل ListView
از این کنترل می توان جهت ایجاد لیستهای ساده ، شبکه های نقاط چندستونی و سینی شمایل ها استفاده کرد.
قسمت سمت راست explorer یک ListView هست.
گزینه های اصلی که برای تغییرشکل ظاهری ListView در اختیار دارید عبارتنداز : Large Icon،small Icon،List، Details و title. این گزینه ها در ویژگی view این کنترل قرار دارد.
و عملکرد این گزینه ها همچون عملکرد view در اکسپلورر هست.
برای شروع یک کنترل ازListView در فرم قرار بدید.
خاصیت smallImageList را برابر کنترل ImageList ایی که قبلاً ساختید مقدار دهی کنید.
و خاصیت viewرا مثلاً برابر Deitals کنید.
ListView اجازه ی الحاق به دو ImageList رو می ده : یکی برای شمایل 32*32 پیکسلی و دیگری برای تصاویر کوچک ؛ یعنی LargeImageList وsmallImageList .
اگه خاصیت view رو برابر LargeIcon کنید تصاویر خاصیت LargeImageList رو نمایش میده وگرنه تصاویر خاصیت smallImageList .
وقتی خاصیت view رو برابر Deitals قرار می دید یک عنوان خالی در بالای این کنترل قرار می گیره . محتویات این عنوان بوسیله ستون های تعریف شده در مجموعه columns تعیین می شند.
بر روی خاصیت columns کلیک کرده و فیلدهای موردنظر خودتون رو اضافه کنید.
برای اضافه کردن عناصر به ListView از ویژگی items استفاده می کنیم.
بر روی items کلیک کرده و عناصر خودتون رو اضافه کنید و ویژگی text هر عنصر رو مقدار بدید . با استفاده از خاصیت ImageIndex تصویر موردنظرتون رو هم انتخاب می کنید.
اگر در خاصیت column بیشتر از یک ستون رو انتخاب کرده باشید در این قسمت مقدار اولین ستون در خاصیت text تعیین میشه و مقدار بقیه ستون هادر خاصیت subItem.
مدیریت ListView بااستفاده از کد:
بصورت پیش فرض خاصیت Multselect برابر true هست لذا ListView بجای ویژگی selectdItem از مجموعه selectdItems پیشتیبانی می کند.
برای کسب اطلاعات در مورد یک عنصر انتخاب شده به اندیس آن رجوع می کنیم.
مثلاً:
if (lvMyListView.SelectedItems.Count > 0)
label1.Text = lvMyListView.SelectedItems[0].Text
خط اول می گه اگر سطری انتخاب شده بود ودر خط دوم اولین عنصر انتخاب شده در ListView رو در لیبل1 نمایش میده.
اضافه کردن :
lvMyListView.Items.Add("Mobina alizade");
این مدل اضافه کردن فقط به ستون اول مقدار میده اما اگه شمادر حالت deitals باشید و چندتاستون تعریف کرده باشید از طریق زیر اد کردن رو انجام بدید:
ListViewItem objListView;
objListView =lvMyListView.Items.Add("Homa abasi", 2);
objListView.SubItems.Add("Mashhad");
objListView.SubItems.Add("Khorasan");
مثلا فرض کردم که در حالت Deitals هستم و سه ستون دارم یکی نام ، شهر، استان.
سطر دوم متن ستون اولم رو تعیین میکنه و شماره 2 به معنی این هست که از ImageList خاصیت smallImageList تصویر دوم رو به این رکورد اضافه کن. و در دوسطربعدی هم مقدار دو ستون بعدی معین می شند.
حذف:
lvMyListView.Items.Remove(lvMyListView.SelectedIte ms[0]);
یعنی اولین سطری که انتخاب شده رو حذف کن.
lvMyListView.Items.RemoveAt(0);
یعنی اولین سطر listview رو حذف کن.
lvMyListView.Items.Clear();
یعنی کل سطرهای listview رو حذف کن.
موفق باشید نظرتون را هم بگید و خودتون هم چیزی بلدید دست به کار بشید لطفااااااً