ActiveItem Property (original) (raw)
Summary
Active item of this image viewer.
Syntax
Property Value
The active item of this image viewer. This value cannot be null.
Example
This example will use the viewer as a single-selection enabled list of images and shows how to track the current active item.
Start with the ImageViewer example, remove all the code inside the example function (search for the "// TODO: add example code here" comment), and insert the following code:
using Leadtools;
using Leadtools.Controls;
using Leadtools.Codecs;
using Leadtools.Drawing;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
public void ActiveItem_Example()
{
// Clear all the images already the viewer
_imageViewer.Items.Clear();
// Use vertical view layout
_imageViewer.ViewLayout = new ImageViewerVerticalViewLayout();
// Make sure the item size is larger than the image size (thumbnails mode)
_imageViewer.ItemSize = LeadSize.Create(200, 200);
_imageViewer.ImageBorderThickness = 1;
// Change the active item background color
_imageViewer.ActiveItemBackgroundColor = Color.LightBlue;
_imageViewer.SelectedItemBackgroundColor = Color.LightBlue;
// Add 4 items to the viewer
using (var codecs = new RasterCodecs())
{
for (var page = 1; page <= 4; page++)
{
var item = new ImageViewerItem();
var fileName = Path.Combine(LEAD_VARS.ImagesDir, string.Format("ocr{0}.tif", page));
// Create a thumbnail from the image
using (var image = codecs.Load(fileName, page))
{
item.Image = image.CreateThumbnail(180, 180, 24, RasterViewPerspective.TopLeft, RasterSizeFlags.Resample);
}
_imageViewer.Items.Add(item);
}
}
// Add the interface mode to select items (single)
var selectItemsMode = new ImageViewerSelectItemsInteractiveMode();
selectItemsMode.SelectionMode = ImageViewerSelectionMode.Single;
// Tell the mode to set the active item for us
selectItemsMode.AutoItemMode = ImageViewerAutoItemMode.AutoSetActive;
_imageViewer.DefaultInteractiveMode = selectItemsMode;
// Hook to the ActiveItemChanged event and update the label
_imageViewer.ActiveItemChanged += (sender, e) =>
{
var index = _imageViewer.Items.IndexOf(_imageViewer.ActiveItem);
_label.Text = "ActiveIndex index is " + index.ToString();
};
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}