Author: jordi
Date: 2005-10-18 15:59:13 -0400 (Tue, 18 Oct 2005)
New Revision: 51886
Modified:
trunk/winforms/listview/swf-listview-items.cs
Log:
Enhancements to the listview sample
Modified: trunk/winforms/listview/swf-listview-items.cs
===================================================================
--- trunk/winforms/listview/swf-listview-items.cs 2005-10-18 19:47:30 UTC
(rev 51885)
+++ trunk/winforms/listview/swf-listview-items.cs 2005-10-18 19:59:13 UTC
(rev 51886)
@@ -59,6 +59,8 @@
private Label label_checked_val;
private Label label_selected;
private Label label_selected_val;
+ private Label label_selected_items;
+ private Label label_checked_items;
private CheckBox checkbox_hidesel;
private CheckBox checkbox_fullrow;
private CheckBox checkbox_gridlines;
@@ -75,7 +77,7 @@
"abiword_48.png",
"bmp.png",
"disks.png",
- "evolution.png",
+ "evolution.png",
};
public ListViewTest ()
@@ -95,13 +97,15 @@
listView_content.Location = new System.Drawing.Point
(10, 10);
listView_content.Size = new System.Drawing.Size (400,
300);
listView_content.SelectedIndexChanged += new
System.EventHandler (listviewIndexChanged);
+ listView_content.ItemCheck += new ItemCheckEventHandler
(itemCheckChanged);
+ listView_content.KeyDown += new KeyEventHandler
(OnKeyDownLV);
/* Small images */
ImageList il = new ImageList ();
il.ColorDepth = ColorDepth.Depth32Bit;
il.ImageSize = new Size (32, 32);
- for (int i = 0; i < names.Length; i++)
+ for (int i = 0; i < names.Length; i++)
il.Images.Add (Image.FromFile
("listview-items-icons/32x32/" + names[i]));
listView_content.SmallImageList = il;
@@ -112,7 +116,7 @@
il.ImageSize = new Size (64, 64);
//il.ImageSize = new Size (128, 128);
- for (int i = 0; i < names.Length; i++)
+ for (int i = 0; i < names.Length; i++)
il.Images.Add (Image.FromFile
("listview-items-icons/64x64/" + names[i]));
il.Images[1] = Image.FromFile ("horse.bmp");
@@ -283,6 +287,16 @@
label_selected_val.AutoSize = true;
Controls.Add (label_selected_val);
+ label_selected_items = new Label ();
+ label_selected_items.Location = new
System.Drawing.Point (10, 320);
+ label_selected_items.Size = new Size (400, 150);
+ Controls.Add (label_selected_items);
+
+ label_checked_items = new Label ();
+ label_checked_items.Location = new System.Drawing.Point
(10, 480);
+ label_checked_items.Size = new Size (400, 150);
+ Controls.Add (label_checked_items);
+
// CheckBoxes
checkbox_checkboxes = new CheckBox ();
checkbox_checkboxes.Location = new System.Drawing.Point
(430, 240);
@@ -353,6 +367,45 @@
}
+ private void OnKeyDownLV (Object o, KeyEventArgs key)
+ {
+ if (key.KeyValue == 'D') { // Delete focused element
when pressing D
+ listView_content.Items.Remove
(listView_content.FocusedItem);
+
+ }
+ }
+
+ private void CollectionUpdated ()
+ {
+ string str;
+ str = "SelIndices ";
+ for (int i = 0; i <
listView_content.SelectedIndices.Count; i++) {
+ str += "" + listView_content.SelectedIndices[i];
+ str += ";";
+ }
+
+ str += " - SelObjects ";
+ for (int i = 0; i <
listView_content.SelectedItems.Count; i++) {
+ str += "" + listView_content.SelectedItems[i];
+ str += ";";
+ }
+ label_selected_items.Text = str;
+
+ str = "CheckedIndices ";
+ for (int i = 0; i <
listView_content.CheckedIndices.Count; i++) {
+ str += "" + listView_content.CheckedIndices[i];
+ str += ";";
+ }
+
+ str += " - CheckedObjects ";
+ for (int i = 0; i <
listView_content.CheckedItems.Count; i++) {
+ str += "" + listView_content.CheckedItems[i];
+ str += ";";
+ }
+ label_checked_items.Text = str;
+ }
+
+
// Events
private void buttonAddItemsClick (object sender,
System.EventArgs e)
{
@@ -363,19 +416,22 @@
listView_content.Items.Add (item);
last_item++;
image_index++;
-
- for (int subitems = 0; subitems < 5;
subitems++) {
+
+ for (int subitems = 0; subitems < 5;
subitems++) {
item.SubItems.Add ("SubItem" +
subitems);
}
if (image_index >= names.Length)
image_index = 0;
}
+
+ CollectionUpdated ();
}
private void buttonDelItemsClick (object sender,
System.EventArgs e)
{
listView_content.Clear ();
+ CollectionUpdated ();
}
private void buttonChgItemsClick (object sender,
System.EventArgs e)
@@ -385,14 +441,25 @@
Console.WriteLine ("Item {0} - {1}",
listView_content.Items [i].Text,
listView_content.Items
[i].GetBounds (ItemBoundsPortion.Entire));
}
+
}
+
+ private void itemCheckChanged (object sender,
ItemCheckEventArgs e)
+ {
+ CollectionUpdated ();
+ }
+
private void listviewIndexChanged (object sender,
System.EventArgs e)
{
- label_index_val.Text = "" +
listView_content.FocusedItem.Index;
- label_bounds_val.Text = "" +
listView_content.FocusedItem.Bounds;
- label_checked_val.Text = "" +
listView_content.FocusedItem.Checked;
- label_selected_val.Text = "" +
listView_content.FocusedItem.Selected;
+ if (listView_content.FocusedItem != null) {
+ label_index_val.Text = "" +
listView_content.FocusedItem.Index;
+ label_bounds_val.Text = "" +
listView_content.FocusedItem.Bounds;
+ label_checked_val.Text = "" +
listView_content.FocusedItem.Checked;
+ label_selected_val.Text = "" +
listView_content.FocusedItem.Selected;
+ }
+
+ CollectionUpdated ();
}
private void comboview_selectedindex (object sender,
System.EventArgs e)
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches