1 // Permission is hereby granted, free of charge, to any person obtaining
2 // a copy of this software and associated documentation files (the
3 // "Software"), to deal in the Software without restriction, including
4 // without limitation the rights to use, copy, modify, merge, publish,
5 // distribute, sublicense, and/or sell copies of the Software, and to
6 // permit persons to whom the Software is furnished to do so, subject to
7 // the following conditions:
9 // The above copyright notice and this permission notice shall be
10 // included in all copies or substantial portions of the Software.
12 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
13 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
14 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
15 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
16 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
17 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
18 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20 // Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
23 // Jordi Mas i Hernandez <jordi@ximian.com>
28 using System.Windows.Forms;
30 using System.Reflection;
31 using System.Collections;
32 using NUnit.Framework;
34 namespace MonoTests.System.Windows.Forms
37 public class ListViewCollectionsTest
40 ColumnHeaderCollection
43 public void ColumnHeaderCollectionTest_PropertiesTest ()
45 ListView listview = new ListView ();
48 Assert.AreEqual (false, listview.Columns.IsReadOnly, "ColumnHeaderCollectionTest_PropertiesTest#1");
49 Assert.AreEqual (true, ((ICollection)listview.Columns).IsSynchronized, "ColumnHeaderCollectionTest_PropertiesTest#2");
50 Assert.AreEqual (listview.Columns, ((ICollection)listview.Columns).SyncRoot, "ColumnHeaderCollectionTest_PropertiesTest#3");
51 Assert.AreEqual (false, ((IList)listview.Columns).IsFixedSize, "ColumnHeaderCollectionTest_PropertiesTest#4");
52 Assert.AreEqual (0, listview.Columns.Count, "ColumnHeaderCollectionTest_PropertiesTest#5");
56 public void ColumnHeaderCollectionTest_AddTest ()
58 ListView listview = new ListView ();
60 // Duplicated elements with same text added
61 listview.Columns.Add (new ColumnHeader ());
62 listview.Columns.Add (new ColumnHeader ());
63 Assert.AreEqual (2, listview.Columns.Count, "ColumnHeaderCollectionTest_AddTest#1");
64 Assert.AreEqual ("ColumnHeader", listview.Columns[0].Text, "ColumnHeaderCollectionTest_AddTest#2");
68 public void ColumnHeaderCollectionTest_ClearTest ()
70 ListView listview = new ListView ();
72 // Duplicated elements with same text added
73 listview.Columns.Add (new ColumnHeader ());
74 listview.Columns.Clear ();
75 Assert.AreEqual (0, listview.Columns.Count, "ColumnHeaderCollectionTest_ClearTest#1");
79 [Test, ExpectedException (typeof (ArgumentOutOfRangeException))]
80 public void ColumnHeaderCollectionTest_GetItem_ExceptionTest ()
82 // Duplicated elements not added
83 ListView listview = new ListView ();
84 ColumnHeader item = listview.Columns[5];
85 Assert.Fail ("#1: " + item.Text); // avoid CS0219 warning
89 CheckedIndexCollection
92 public void CheckedIndexCollectionTest_PropertiesTest ()
94 ListView listview = new ListView ();
97 Assert.AreEqual (true, listview.CheckedIndices.IsReadOnly, "CheckedIndexCollectionTest_PropertiesTest#1");
98 Assert.AreEqual (false, ((ICollection)listview.CheckedIndices).IsSynchronized, "CheckedIndexCollectionTest_PropertiesTest#2");
99 Assert.AreEqual (listview.CheckedIndices, ((ICollection)listview.CheckedIndices).SyncRoot, "CheckedIndexCollectionTest_PropertiesTest#3");
100 Assert.AreEqual (true, ((IList)listview.CheckedIndices).IsFixedSize, "CheckedIndexCollectionTest_PropertiesTest#4");
101 Assert.AreEqual (0, listview.CheckedIndices.Count, "CheckedIndexCollectionTest_PropertiesTest#5");
106 [Test, ExpectedException (typeof (NotSupportedException))]
107 public void CheckedIndexCollectionTest_Add_ExceptionTest ()
109 ListView listview = new ListView ();
110 ((IList)listview.CheckedIndices).Add (5);
113 [Test, ExpectedException (typeof (NotSupportedException))]
114 public void CheckedIndexCollectionTest_Remove_ExceptionTest ()
116 ListView listview = new ListView ();
117 ((IList)listview.CheckedIndices).Remove (5);
120 [Test, ExpectedException (typeof (NotSupportedException))]
121 public void CheckedIndexCollectionTest_RemoveAt_ExceptionTest ()
123 ListView listview = new ListView ();
124 ((IList)listview.CheckedIndices).RemoveAt (5);
128 CheckedItemCollection
131 public void CheckedItemCollectionTest_PropertiesTest ()
133 ListView listview = new ListView ();
136 Assert.AreEqual (true, listview.CheckedItems.IsReadOnly, "CheckedItemCollectionTest_PropertiesTest#1");
137 Assert.AreEqual (false, ((ICollection)listview.CheckedItems).IsSynchronized, "CheckedItemCollectionTest_PropertiesTest#2");
138 Assert.AreEqual (listview.CheckedItems, ((ICollection)listview.CheckedItems).SyncRoot, "CheckedItemCollectionTest_PropertiesTest#3");
139 Assert.AreEqual (true, ((IList)listview.CheckedItems).IsFixedSize, "CheckedItemCollectionTest_PropertiesTest#4");
140 Assert.AreEqual (0, listview.CheckedItems.Count, "CheckedItemCollectionTest_PropertiesTest#5");
145 [Test, ExpectedException (typeof (NotSupportedException))]
146 public void CheckedItemCollectionTest_PropertiesTest_Add_ExceptionTest ()
148 ListView listview = new ListView ();
149 ((IList)listview.CheckedItems).Add (5);
152 [Test, ExpectedException (typeof (NotSupportedException))]
153 public void CheckedItemCollectionTest_PropertiesTest_Remove_ExceptionTest ()
155 ListView listview = new ListView ();
156 ((IList)listview.CheckedItems).Remove (5);
159 [Test, ExpectedException (typeof (NotSupportedException))]
160 public void CheckedItemCollectionTest_PropertiesTest_RemoveAt_ExceptionTest ()
162 ListView listview = new ListView ();
163 ((IList)listview.CheckedItems).RemoveAt (5);
167 SelectedIndexCollection
170 public void SelectedIndexCollectionTest_PropertiesTest ()
172 ListView listview = new ListView ();
175 Assert.AreEqual (true, listview.SelectedIndices.IsReadOnly, "SelectedIndexCollectionTest_PropertiesTest#1");
176 Assert.AreEqual (false, ((ICollection)listview.SelectedIndices).IsSynchronized, "SelectedIndexCollectionTest_PropertiesTest#2");
177 Assert.AreEqual (listview.SelectedIndices, ((ICollection)listview.SelectedIndices).SyncRoot, "SelectedIndexCollectionTest_PropertiesTest#3");
178 Assert.AreEqual (true, ((IList)listview.SelectedIndices).IsFixedSize, "SelectedIndexCollectionTest_PropertiesTest#4");
179 Assert.AreEqual (0, listview.SelectedIndices.Count, "SelectedIndexCollectionTest_PropertiesTest#5");
184 [Test, ExpectedException (typeof (NotSupportedException))]
185 public void SelectedIndexCollectionTest_Add_ExceptionTest ()
187 ListView listview = new ListView ();
188 ((IList)listview.SelectedIndices).Add (5);
191 [Test, ExpectedException (typeof (NotSupportedException))]
192 public void SelectedIndexCollectionTest_Remove_ExceptionTest ()
194 ListView listview = new ListView ();
195 ((IList)listview.SelectedIndices).Remove (5);
198 [Test, ExpectedException (typeof (NotSupportedException))]
199 public void SelectedIndexCollectionTest_RemoveAt_ExceptionTest ()
201 ListView listview = new ListView ();
202 ((IList)listview.SelectedIndices).RemoveAt (5);
206 SelectedItemCollection
209 public void SelectedItemCollectionTest_PropertiesTest ()
211 ListView listview = new ListView ();
214 Assert.AreEqual (true, listview.SelectedItems.IsReadOnly, "SelectedItemCollectionTest_PropertiesTest#1");
215 Assert.AreEqual (false, ((ICollection)listview.SelectedItems).IsSynchronized, "SelectedItemCollectionTest_PropertiesTest#2");
216 Assert.AreEqual (listview.SelectedItems, ((ICollection)listview.SelectedItems).SyncRoot, "SelectedItemCollectionTest_PropertiesTest#3");
217 Assert.AreEqual (true, ((IList)listview.SelectedItems).IsFixedSize, "SelectedItemCollectionTest_PropertiesTest#4");
218 Assert.AreEqual (0, listview.SelectedItems.Count, "SelectedItemCollectionTest_PropertiesTest#5");
223 [Test, ExpectedException (typeof (NotSupportedException))]
224 public void SelectedItemCollectionTest_PropertiesTest_Add_ExceptionTest ()
226 ListView listview = new ListView ();
227 ((IList)listview.SelectedItems).Add (5);
230 [Test, ExpectedException (typeof (NotSupportedException))]
231 public void SelectedItemCollectionTest_PropertiesTest_Remove_ExceptionTest ()
233 ListView listview = new ListView ();
234 ((IList)listview.SelectedItems).Remove (5);
237 [Test, ExpectedException (typeof (NotSupportedException))]
238 public void SelectedItemCollectionTest_PropertiesTest_RemoveAt_ExceptionTest ()
240 ListView listview = new ListView ();
241 ((IList)listview.SelectedItems).RemoveAt (5);
245 public void SelectedItemCollectionTest_Clear ()
247 Form form = new Form ();
248 ListView lvw = new ListView ();
249 form.Controls.Add (lvw);
250 ListViewItem item = lvw.Items.Add ("Title");
251 item.Selected = true;
253 lvw.SelectedItems.Clear ();
255 Assert.IsTrue (item.Selected, "#A1");
256 Assert.AreEqual (0, lvw.SelectedItems.Count, "#A2");
257 Assert.IsFalse (lvw.SelectedItems.Contains (item), "#A3");
261 Assert.IsTrue (item.Selected, "#B1");
262 Assert.AreEqual (1, lvw.SelectedItems.Count, "#B2");
263 Assert.IsTrue (lvw.SelectedItems.Contains (item), "#B3");
265 // once listview is created, clear DOES have effect
266 lvw.SelectedItems.Clear ();
268 Assert.IsFalse (item.Selected, "#C1");
269 Assert.AreEqual (0, lvw.SelectedItems.Count, "#C2");
270 Assert.IsFalse (lvw.SelectedItems.Contains (item), "#C3");
274 public void SelectedItemCollectionTest_Contains ()
276 Form form = new Form ();
277 ListView lvw = new ListView ();
278 form.Controls.Add (lvw);
279 ListViewItem item = lvw.Items.Add ("Title");
280 item.Selected = true;
281 IList list = (IList) lvw.SelectedItems;
283 Assert.IsFalse (lvw.SelectedItems.Contains (item), "#A1");
284 Assert.IsFalse (lvw.SelectedItems.Contains (new ListViewItem ()), "#A2");
285 Assert.IsFalse (list.Contains (item), "#A3");
286 Assert.IsFalse (list.Contains (new ListViewItem ()), "#A4");
290 Assert.IsTrue (lvw.SelectedItems.Contains (item), "#B1");
291 Assert.IsFalse (lvw.SelectedItems.Contains (new ListViewItem ()), "#B2");
292 Assert.IsTrue (list.Contains (item), "#B3");
293 Assert.IsFalse (list.Contains (new ListViewItem ()), "#B4");
297 public void SelectedItemCollectionTest_CopyTo ()
299 Form form = new Form ();
300 ListView lvw = new ListView ();
301 form.Controls.Add (lvw);
302 ListViewItem item = lvw.Items.Add ("Title");
303 item.Selected = true;
304 IList list = (IList) lvw.SelectedItems;
305 Assert.IsNotNull (list, "#A1");
306 ListViewItem [] items = new ListViewItem [1];
308 lvw.SelectedItems.CopyTo (items, 0);
309 Assert.IsNull (items [0], "#A2");
310 lvw.SelectedItems.CopyTo (items, 455);
314 lvw.SelectedItems.CopyTo (items, 0);
315 Assert.AreSame (item, items [0], "#B1");
317 lvw.SelectedItems.CopyTo (items, 455);
319 } catch (ArgumentException) {
324 public void SelectedItemCollectionTest_Count ()
326 Form form = new Form ();
327 ListView lvw = new ListView ();
328 form.Controls.Add (lvw);
329 ListViewItem item = lvw.Items.Add ("Title");
330 item.Selected = true;
332 Assert.AreEqual (0, lvw.SelectedItems.Count, "#1");
334 Assert.AreEqual (1, lvw.SelectedItems.Count, "#2");
338 public void SelectedItemCollectionTest_GetEnumerator ()
340 Form form = new Form ();
341 ListView lvw = new ListView ();
342 form.Controls.Add (lvw);
343 ListViewItem item = lvw.Items.Add ("Title");
344 item.Selected = true;
346 Assert.IsFalse (lvw.SelectedItems.GetEnumerator ().MoveNext (), "#A1");
350 Assert.IsTrue (lvw.SelectedItems.GetEnumerator ().MoveNext (), "#B1");
354 public void SelectedItemCollectionTest_Indexer ()
356 Form form = new Form ();
357 ListView lvw = new ListView ();
358 form.Controls.Add (lvw);
359 ListViewItem item = lvw.Items.Add ("Title");
360 item.Selected = true;
361 IList list = (IList) lvw.SelectedItems;
364 ListViewItem x = lvw.SelectedItems [0];
365 Assert.Fail ("#A1" + x.ToString ());
366 } catch (ArgumentOutOfRangeException) {
370 ListViewItem x = list [0] as ListViewItem;
371 Assert.Fail ("#A2" + x.ToString ());
372 } catch (ArgumentOutOfRangeException) {
377 Assert.AreSame (item, lvw.SelectedItems [0], "#B1");
378 Assert.AreSame (item, list [0], "#B2");
382 public void SelectedItemCollectionTest_IndexOf ()
384 Form form = new Form ();
385 ListView lvw = new ListView ();
386 form.Controls.Add (lvw);
387 ListViewItem item = lvw.Items.Add ("Title");
388 item.Selected = true;
389 IList list = (IList) lvw.SelectedItems;
391 Assert.AreEqual (-1, lvw.SelectedItems.IndexOf (item), "#A1");
392 Assert.AreEqual (-1, lvw.SelectedItems.IndexOf (new ListViewItem ()), "#A2");
393 Assert.AreEqual (-1, list.IndexOf (item), "#A3");
394 Assert.AreEqual (-1, list.IndexOf (new ListViewItem ()), "#A4");
398 Assert.AreEqual (0, lvw.SelectedItems.IndexOf (item), "#B1");
399 Assert.AreEqual (-1, lvw.SelectedItems.IndexOf (new ListViewItem ()), "#B2");
400 Assert.AreEqual (0, list.IndexOf (item), "#B3");
401 Assert.AreEqual (-1, list.IndexOf (new ListViewItem ()), "#B4");
405 ListViewItemCollection
409 public void ListViewItemCollectionTest_Add ()
411 ListView lvw = new ListView ();
412 ListViewItem item = new ListViewItem ("Title");
413 ListViewItem newItem = lvw.Items.Add (item);
414 Assert.AreSame (newItem, item, "#A1");
415 Assert.AreEqual (0, item.Index, "#A2");
416 Assert.AreSame (item, lvw.Items [0], "#A3");
417 Assert.AreSame (lvw, item.ListView, "#A4");
419 newItem = lvw.Items.Add ("A title");
420 Assert.AreEqual ("A title", newItem.Text, "#B1");
421 Assert.AreEqual (-1, newItem.ImageIndex, "#B2");
422 Assert.AreEqual (1, newItem.Index, "#B3");
423 Assert.AreSame (newItem, lvw.Items [1], "#B4");
424 Assert.AreSame (lvw, newItem.ListView, "#B5");
425 Assert.AreEqual (0, item.Index, "#B6");
426 Assert.AreSame (item, lvw.Items [0], "#B7");
428 newItem = lvw.Items.Add ("A title", 4);
429 Assert.AreEqual ("A title", newItem.Text, "#C1");
430 Assert.AreEqual (4, newItem.ImageIndex, "#C2");
431 Assert.AreEqual (2, newItem.Index, "#C3");
432 Assert.AreSame (newItem, lvw.Items [2], "#C4");
433 Assert.AreSame (lvw, newItem.ListView, "#C5");
434 Assert.AreEqual (0, item.Index, "#C6");
435 Assert.AreSame (item, lvw.Items [0], "#C7");
439 [ExpectedException (typeof (ArgumentException))] // An item cannot be added more than once. To add an item again, you need to clone it
440 public void ListViewItemCollectionTest_Add_ExistingItem ()
442 ListView lvw = new ListView ();
443 ListViewItem itemA = lvw.Items.Add ("A");
444 lvw.Items.Add (itemA);
448 public void ListViewItemCollectionTest_Insert ()
450 ListView lvw = new ListView ();
451 ListViewItem item = new ListViewItem ("Title");
452 ListViewItem newItem = lvw.Items.Insert (0, item);
453 Assert.AreSame (newItem, item, "#A1");
454 Assert.AreEqual (-1, newItem.ImageIndex, "#A2");
455 Assert.AreSame (newItem, lvw.Items [0], "#A3");
456 Assert.AreSame (lvw, newItem.ListView, "#A4");
458 newItem = lvw.Items.Insert (1, "A title");
459 Assert.AreEqual ("A title", newItem.Text, "#B1");
460 Assert.AreEqual (-1, newItem.ImageIndex, "#B2");
461 Assert.AreEqual (1, newItem.Index, "#B3");
462 Assert.AreSame (newItem, lvw.Items [1], "#B4");
463 Assert.AreSame (lvw, newItem.ListView, "#B5");
464 Assert.AreEqual (0, item.Index, "#B6");
465 Assert.AreSame (item, lvw.Items [0], "#B7");
467 newItem = lvw.Items.Insert (0, "Other title");
468 Assert.AreEqual ("Other title", newItem.Text, "#C1");
469 Assert.AreEqual (-1, newItem.ImageIndex, "#C2");
470 Assert.AreEqual (0, newItem.Index, "#C3");
471 Assert.AreSame (newItem, lvw.Items [0], "#C4");
472 Assert.AreSame (lvw, newItem.ListView, "#C5");
473 Assert.AreEqual (1, item.Index, "#C6");
474 Assert.AreSame (item, lvw.Items [1], "#C7");
476 newItem = lvw.Items.Insert (3, "Some title", 4);
477 Assert.AreEqual ("Some title", newItem.Text, "#D1");
478 Assert.AreEqual (4, newItem.ImageIndex, "#D2");
479 Assert.AreEqual (3, newItem.Index, "#D3");
480 Assert.AreSame (newItem, lvw.Items [3], "#D4");
481 Assert.AreSame (lvw, newItem.ListView, "#D5");
482 Assert.AreEqual (1, item.Index, "#D6");
483 Assert.AreSame (item, lvw.Items [1], "#D7");
485 newItem = lvw.Items.Insert (0, "No title", 4);
486 Assert.AreEqual ("No title", newItem.Text, "#E1");
487 Assert.AreEqual (4, newItem.ImageIndex, "#E2");
488 Assert.AreEqual (0, newItem.Index, "#E3");
489 Assert.AreSame (newItem, lvw.Items [0], "#E4");
490 Assert.AreSame (lvw, newItem.ListView, "#E5");
491 Assert.AreEqual (2, item.Index, "#E6");
492 Assert.AreSame (item, lvw.Items [2], "#E7");
496 [ExpectedException (typeof (ArgumentException))] // An item cannot be added more than once. To add an item again, you need to clone it
497 public void ListViewItemCollectionTest_Insert_ExistingItem ()
499 ListView lvw = new ListView ();
500 ListViewItem itemA = lvw.Items.Add ("A");
501 lvw.Items.Insert (0, itemA);
505 public void ListViewItemCollectionTest_Remove ()
507 Form form = new Form ();
508 ListView lvw = new ListView ();
509 form.Controls.Add (lvw);
510 lvw.MultiSelect = true;
511 lvw.CheckBoxes = true;
515 ListViewItem itemA = lvw.Items.Add ("A");
516 ListViewItem itemB = lvw.Items.Add ("B");
518 ListViewItem itemD = lvw.Items.Add ("D");
520 Assert.AreEqual (4, lvw.Items.Count, "#A1");
521 Assert.AreEqual (0, lvw.SelectedItems.Count, "#A2");
522 Assert.AreEqual (0, lvw.CheckedItems.Count, "#A3");
524 itemB.Checked = true;
525 itemD.Checked = true;
527 Assert.AreEqual (4, lvw.Items.Count, "#B1");
528 Assert.AreEqual (0, lvw.SelectedItems.Count, "#B2");
529 Assert.AreEqual (2, lvw.CheckedItems.Count, "#B3");
530 Assert.AreSame (itemB, lvw.CheckedItems [0], "#B4");
531 Assert.AreSame (itemD, lvw.CheckedItems [1], "#B5");
533 itemD.Selected = true;
535 Assert.AreEqual (4, lvw.Items.Count, "#C1");
536 Assert.AreEqual (1, lvw.SelectedItems.Count, "#C2");
537 Assert.AreSame (itemD, lvw.SelectedItems [0], "#C3");
538 Assert.AreEqual (2, lvw.CheckedItems.Count, "#C4");
539 Assert.AreSame (itemB, lvw.CheckedItems [0], "#C5");
540 Assert.AreSame (itemD, lvw.CheckedItems [1], "#C6");
542 lvw.Items.Remove (itemB);
544 Assert.AreEqual (3, lvw.Items.Count, "#D1");
545 Assert.AreEqual (1, lvw.SelectedItems.Count, "#D2");
546 Assert.AreSame (itemD, lvw.SelectedItems [0], "#D3");
547 Assert.AreEqual (1, lvw.CheckedItems.Count, "#D4");
548 Assert.AreSame (itemD, lvw.CheckedItems [0], "#D5");
550 lvw.Items.Remove (itemA);
552 Assert.AreEqual (2, lvw.Items.Count, "#E1");
553 Assert.AreEqual (1, lvw.SelectedItems.Count, "#E2");
554 Assert.AreEqual (itemD, lvw.SelectedItems [0], "#E3");
555 Assert.AreEqual (1, lvw.CheckedItems.Count, "#E4");
556 Assert.AreEqual (itemD, lvw.CheckedItems [0], "#E5");
560 public void ListViewItemCollectionTest_RemoveAt ()
562 Form form = new Form ();
563 ListView lvw = new ListView ();
564 form.Controls.Add (lvw);
565 lvw.MultiSelect = true;
566 lvw.CheckBoxes = true;
574 Assert.AreEqual (4, lvw.Items.Count, "#A1");
575 Assert.AreEqual (0, lvw.SelectedItems.Count, "#A2");
576 Assert.AreEqual (0, lvw.CheckedItems.Count, "#A3");
578 lvw.Items [1].Checked = true;
579 lvw.Items [3].Checked = true;
581 Assert.AreEqual (4, lvw.Items.Count, "#B1");
582 Assert.AreEqual (0, lvw.SelectedItems.Count, "#B2");
583 Assert.AreEqual (2, lvw.CheckedItems.Count, "#B3");
584 Assert.AreEqual ("B", lvw.CheckedItems [0].Text, "#B4");
585 Assert.AreEqual ("D", lvw.CheckedItems [1].Text, "#B5");
587 lvw.Items [3].Selected = true;
589 Assert.AreEqual (4, lvw.Items.Count, "#C1");
590 Assert.AreEqual (1, lvw.SelectedItems.Count, "#C2");
591 Assert.AreEqual ("D", lvw.SelectedItems [0].Text, "#C3");
592 Assert.AreEqual (2, lvw.CheckedItems.Count, "#C4");
593 Assert.AreEqual ("B", lvw.CheckedItems [0].Text, "#C5");
594 Assert.AreEqual ("D", lvw.CheckedItems [1].Text, "#C6");
596 lvw.Items.RemoveAt (1);
598 Assert.AreEqual (3, lvw.Items.Count, "#D1");
599 Assert.AreEqual (1, lvw.SelectedItems.Count, "#D2");
600 Assert.AreEqual ("D", lvw.SelectedItems [0].Text, "#D3");
601 Assert.AreEqual (1, lvw.CheckedItems.Count, "#D4");
602 Assert.AreEqual ("D", lvw.CheckedItems [0].Text, "#D5");
604 lvw.Items.RemoveAt (0);
606 Assert.AreEqual (2, lvw.Items.Count, "#E1");
607 Assert.AreEqual (1, lvw.SelectedItems.Count, "#E2");
608 Assert.AreEqual ("D", lvw.SelectedItems [0].Text, "#E3");
609 Assert.AreEqual (1, lvw.CheckedItems.Count, "#E4");
610 Assert.AreEqual ("D", lvw.CheckedItems [0].Text, "#E5");