VintaSoft Imaging .NET SDK v8.7
Vintasoft.Imaging.UI Namespace / ImageViewer Class / Image Property
Example



In This Topic
    Image Property (ImageViewer)
    In This Topic
    Gets or sets the focused image that must be displayed in the ImageViewer.
    Syntax
    'Declaration
     
    <ReadOnlyAttribute(True)>
    <BrowsableAttribute(False)>
    Public Property Image As VintasoftImage
    [ReadOnly(true)]
    [Browsable(false)]
    public VintasoftImage Image {get; set;}
    [ReadOnly(true)]
    [Browsable(false)]
    public: __property VintasoftImage* get_Image();
    public: __property void set_Image( 
       VintasoftImage* value
    );
    [ReadOnly(true)]
    [Browsable(false)]
    public:
    property VintasoftImage^ Image {
       VintasoftImage^ get();
       void set (    VintasoftImage^ value);
    }
    Remarks
    When you set the value of this property:
    Example
    This example shows how to capture images from camera and view captured images in ImageViewer.
    ''' <summary>
    ''' Image capture source.
    ''' </summary>
    Private _imageCaptureSource As Vintasoft.Imaging.Media.ImageCaptureSource
                
                
                
    ''' <summary> 
    ''' Initializes a new instance of the <see cref="MainForm"/> class.
    ''' </summary>
    Public Sub New()
    	InitializeComponent()
                
    	' get available image capture devices
    	Dim availableDevices As System.Collections.ObjectModel.ReadOnlyCollection(Of Vintasoft.Imaging.Media.ImageCaptureDevice) = Vintasoft.Imaging.Media.ImageCaptureDeviceConfiguration.GetCaptureDevices()
                
    	' create new image capture source
    	_imageCaptureSource = New Vintasoft.Imaging.Media.ImageCaptureSource()
    	AddHandler _imageCaptureSource.CaptureCompleted, New System.EventHandler(Of Vintasoft.Imaging.Media.ImageCaptureCompletedEventArgs)(AddressOf ImageCaptureSource_CaptureCompleted)
                
    	' if there are available devices
    	If availableDevices.Count <> 0 Then
    		' use the first image capture device
    		_imageCaptureSource.CaptureDevice = availableDevices(0)
    	End If
                
    	AddHandler Shown, New System.EventHandler(AddressOf MainForm_Shown)
    	AddHandler FormClosed, New System.Windows.Forms.FormClosedEventHandler(AddressOf MainForm_FormClosed)
    End Sub
                
                
                
    ''' <summary>
    ''' Starts capturing from camera.
    ''' </summary>
    Private Sub MainForm_Shown(sender As Object, e As System.EventArgs)
    	' if capture device is empty
    	If _imageCaptureSource.CaptureDevice IsNot Nothing Then
    		' start the image capture source
    		_imageCaptureSource.Start()
    		' initialize new image capture request
    		_imageCaptureSource.CaptureAsync()
    	End If
    End Sub
                
    ''' <summary>
    ''' Image is captured.
    ''' </summary>
    Private Sub ImageCaptureSource_CaptureCompleted(sender As Object, e As Vintasoft.Imaging.Media.ImageCaptureCompletedEventArgs)
    	' save reference to the previously captured image
    	Dim oldImage As Vintasoft.Imaging.VintasoftImage = imageViewer1.Image
                
    	' get captured image and show captured image in the image viewer           
    	imageViewer1.Image = e.GetCapturedImage()
                
    	' if previously captured image exists
    	If oldImage IsNot Nothing Then
    		' dispose previously captured image
    		oldImage.Dispose()
    	End If
                
    	' if capture source is started
    	If _imageCaptureSource.State = Vintasoft.Imaging.Media.ImageCaptureState.Started Then
    		' initialize new image capture request
    		_imageCaptureSource.CaptureAsync()
    	End If
    End Sub
                
    ''' <summary>
    ''' Form is closed.
    ''' </summary>
    Private Sub MainForm_FormClosed(sender As Object, e As System.Windows.Forms.FormClosedEventArgs)
    	' stop the image capture source
    	_imageCaptureSource.[Stop]()
    End Sub
    /// <summary>
    /// Image capture source.
    /// </summary>
    Vintasoft.Imaging.Media.ImageCaptureSource _imageCaptureSource;
                
                
                
    /// <summary> 
    /// Initializes a new instance of the <see cref="MainForm"/> class.
    /// </summary>
    public MainForm()
    {
        InitializeComponent();
                
        // get available image capture devices
        System.Collections.ObjectModel.ReadOnlyCollection<Vintasoft.Imaging.Media.ImageCaptureDevice> availableDevices =
            Vintasoft.Imaging.Media.ImageCaptureDeviceConfiguration.GetCaptureDevices();
                
        // create new image capture source
        _imageCaptureSource = new Vintasoft.Imaging.Media.ImageCaptureSource();
        _imageCaptureSource.CaptureCompleted +=
            new System.EventHandler<Vintasoft.Imaging.Media.ImageCaptureCompletedEventArgs>(ImageCaptureSource_CaptureCompleted);
                
        // if there are available devices
        if (availableDevices.Count != 0)
        {
            // use the first image capture device
            _imageCaptureSource.CaptureDevice = availableDevices[0];
        }
                
        Shown += new System.EventHandler(MainForm_Shown);
        FormClosed += new System.Windows.Forms.FormClosedEventHandler(MainForm_FormClosed);
    }
                
                
                
    /// <summary>
    /// Starts capturing from camera.
    /// </summary>
    private void MainForm_Shown(object sender, System.EventArgs e)
    {
        // if capture device is empty
        if (_imageCaptureSource.CaptureDevice != null)
        {
            // start the image capture source
            _imageCaptureSource.Start();
            // initialize new image capture request
            _imageCaptureSource.CaptureAsync();
        }
    }
                
    /// <summary>
    /// Image is captured.
    /// </summary>
    private void ImageCaptureSource_CaptureCompleted(object sender, Vintasoft.Imaging.Media.ImageCaptureCompletedEventArgs e)
    {
        // save reference to the previously captured image
        Vintasoft.Imaging.VintasoftImage oldImage = imageViewer1.Image;
                
        // get captured image and show captured image in the image viewer           
        imageViewer1.Image = e.GetCapturedImage();
                
        // if previously captured image exists
        if (oldImage != null)
        {
            // dispose previously captured image
            oldImage.Dispose();
        }
                
        // if capture source is started
        if (_imageCaptureSource.State == Vintasoft.Imaging.Media.ImageCaptureState.Started)
        {
            // initialize new image capture request
            _imageCaptureSource.CaptureAsync();
        }
    }
                
    /// <summary>
    /// Form is closed.
    /// </summary>
    private void MainForm_FormClosed(object sender, System.Windows.Forms.FormClosedEventArgs e)
    {
        // stop the image capture source
        _imageCaptureSource.Stop();
    }
    Requirements

    Target Platforms: Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, Windows Server 2012, Windows Server 2008, Windows Server 2003

    See Also