LEADTOOLS Windows Forms (Leadtools.WinForms assembly)

Tag Property

Show in webframe
Example 





Gets or sets the object that contains data about this RasterImageListItem.
Syntax
public object Tag {get; set;}
'Declaration
 
Public Property Tag As Object
'Usage
 
Dim instance As RasterImageListItem
Dim value As Object
 
instance.Tag = value
 
value = instance.Tag

            

            
public:
property Object^ Tag {
   Object^ get();
   void set (    Object^ value);
}

Property Value

An System.Object that contains data about this RasterImageListItem. The default value is a null reference (Nothing in Visual Basic).
Remarks

Any System.Object derived type can be assigned to this property.

You can use this property to associate your own user-defined data with an item.

Example
Copy Code  
Imports Leadtools.WinForms
Imports Leadtools
Imports Leadtools.Codecs

Private Class UserData
   Public Number As Integer
   Public Text As String
End Class
Public Sub RasterImageListItem_Tag(ByVal imageList As RasterImageList)
   ' Create a new RasterImageList control.
   imageList.Bounds = New Rectangle(New Point(0, 0), New Size(300, 200))

   ' Sort the items in the list in ascending order.
   imageList.Sorting = SortOrder.Ascending

   ' Initialize the RasterCodecs class
   Dim codecs As RasterCodecs = New RasterCodecs()

   ' Clear existing items
   imageList.Items.Clear()

   ' Create three items
   Dim imagesPath As String = LEAD_VARS.ImagesDir

   For i As Integer = 0 To 2
      ' Load the image
      Dim index As Integer = i + 1
      Dim imageFileName As String = Path.Combine(imagesPath, "ImageProcessingDemo\Image" & index.ToString() & ".cmp")
      Dim image As RasterImage = codecs.Load(imageFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)
      Dim item As RasterImageListItem = New RasterImageListItem(image, 1, "Item" & index.ToString())

      ' Select the first item
      If i = 0 Then
         item.Selected = True
      End If

      ' Add the user data
      Dim data As UserData = New UserData()
      data.Number = index
      data.Text = "This is data number " & index.ToString()
      item.Tag = data

      ' Add the item to the image list
      imageList.Items.Add(item)
   Next i

   ' Add a handler to the SelectedIndexChanged event
   AddHandler imageList.SelectedIndexChanged, AddressOf imageList_SelectedIndexChanged
End Sub

Private Sub imageList_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
   ' User has selected an item from the RasterImageList control.
   ' Get the user data associated with the currently selected item and
   ' show it in a message box

   Dim imageList As RasterImageList = CType(IIf(TypeOf sender Is RasterImageList, sender, Nothing), RasterImageList)

   ' Get the selected item(s)
   Dim selectedItems As RasterImageListItemCollection = imageList.SelectedItems
   If Not selectedItems Is Nothing AndAlso selectedItems.Count = 1 Then
      Dim item As RasterImageListItem = selectedItems(0)

      ' Load the image in its original size and set it in the viewer
      Dim data As UserData = CType(IIf(TypeOf item.Tag Is UserData, item.Tag, Nothing), UserData)
      Dim msg As String = String.Format("Number = {0}{1}Text = {2}", data.Number, Environment.NewLine, data.Text)
      MessageBox.Show(msg)
   End If
End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools.WinForms;
using Leadtools;
using Leadtools.Codecs;

private class UserData
{
   public int Number;
   public string Text;
}
public void RasterImageListItem_Tag(RasterImageList imageList)
{
   // Create a new RasterImageList control.
   imageList.Bounds = new Rectangle(new Point(0, 0), new Size(300, 200));

   // Sort the items in the list in ascending order.
   imageList.Sorting = SortOrder.Ascending;

   // Initialize the RasterCodecs class
   RasterCodecs codecs = new RasterCodecs();

   // Clear existing items
   imageList.Items.Clear();

   // Create three items
   string imagesPath = LEAD_VARS.ImagesDir;

   for (int i = 0; i < 3; i++)
   {
      // Load the image
      int index = i + 1;
      string imageFileName = Path.Combine(imagesPath, @"ImageProcessingDemo\Image" + index.ToString() + ".cmp");
      RasterImage image = codecs.Load(imageFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1);
      RasterImageListItem item = new RasterImageListItem(image, 1, "Item" + index.ToString());

      // Select the first item
      if (i == 0)
         item.Selected = true;

      // Add the user data
      UserData data = new UserData();
      data.Number = index;
      data.Text = "This is data number " + index.ToString();
      item.Tag = data;

      // Add the item to the image list
      imageList.Items.Add(item);
   }

   // Add a handler to the SelectedIndexChanged event
   imageList.SelectedIndexChanged += new EventHandler(imageList_SelectedIndexChanged);
}

private void imageList_SelectedIndexChanged(object sender, EventArgs e)
{
   // User has selected an item from the RasterImageList control.
   // Get the user data associated with the currently selected item and
   // show it in a message box

   RasterImageList imageList = sender as RasterImageList;

   // Get the selected item(s)
   RasterImageListItemCollection selectedItems = imageList.SelectedItems;
   if (selectedItems != null && selectedItems.Count == 1)
   {
      RasterImageListItem item = selectedItems[0];

      // Load the image in its original size and set it in the viewer
      UserData data = item.Tag as UserData;
      string msg = string.Format("Number = {0}{1}Text = {2}", data.Number, Environment.NewLine, data.Text);
      MessageBox.Show(msg);
   }
}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Requirements

Target Platforms

See Also

Reference

RasterImageListItem Class
RasterImageListItem Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.