Gets or sets a value indicating whether to auto dispose the old image when a new image is set into this
RasterImageBox.
Supported in Silverlight, Windows Phone 7
Syntax
Visual Basic (Declaration) | |
---|
Public Property AutoDisposeImages As Boolean |
Visual Basic (Usage) | Copy Code |
---|
Dim instance As RasterImageBox
Dim value As Boolean
instance.AutoDisposeImages = value
value = instance.AutoDisposeImages |
C# | |
---|
public bool AutoDisposeImages {get; set;} |
C++/CLI | |
---|
public:
property bool AutoDisposeImages {
bool get();
void set ( bool value);
} |
Property Value
true if the
Leadtools.RasterImage object in
Image is automatically disposed when a new image is set; otherwise,
false. Default value is
true.
Example
Visual Basic | Copy Code |
---|
Public Sub RasterImageBox_AutoDisposeImages(ByVal imageBox As RasterImageBox)
' Load two image2
Dim codecs As New RasterCodecs()
Dim file1 As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
Dim file2 As String = Path.Combine(LEAD_VARS.ImagesDir, "Image2.cmp")
Dim image1 As RasterImage = codecs.Load(file1)
Dim image2 As RasterImage = codecs.Load(file2)
' Make sure the AutoDisposeImage property of the image box is set to true
imageBox.AutoDisposeImages = True
' Set the first image into the image box
imageBox.Image = image1
' Now set the second image into the image box (this disposes the first image since the AutoDisposeImage property is true)
imageBox.Image = image2
' Try to access the first image, it generates a NullReferenceException exception since the image has been disposed
MessageBox.Show("Try to access the first image, it generates a NullReferenceException exception since the image has been disposed.")
Try
Dim width As Integer = image1.Width
MessageBox.Show(String.Format("Width is {0} pixels", width))
Catch ex As NullReferenceException
MessageBox.Show(ex.Message)
End Try
' Set the image to Nothing (will dispose the second image as well)
imageBox.Image = Nothing
' Now re-load the two images
image1 = codecs.Load(file1)
image2 = codecs.Load(file2)
' Make sure the AutoDisposeImage property of the image box is set to false
imageBox.AutoDisposeImages = False
' Set the first image into the image box
imageBox.Image = image1
' Now set the second image into the image box (this will not disposes the first image since the AutoDisposeImage property is false)
imageBox.Image = image2
' Try to access the first image, it should work fine this time
Try
Dim width As Integer = image1.Width
MessageBox.Show(String.Format("Width is {0} pixels", width))
Catch ex As NullReferenceException
MessageBox.Show(ex.Message)
End Try
' Set the image to Nothing (will not dispose the second image)
imageBox.Image = Nothing
' We should now dispose the two images manually
image1.Dispose()
image2.Dispose()
codecs.Dispose()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class |
C# | Copy Code |
---|
public void RasterImageBox_AutoDisposeImages(RasterImageBox imageBox)
{
// Load two image2
RasterCodecs codecs = new RasterCodecs();
string file1 = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
string file2 = Path.Combine(LEAD_VARS.ImagesDir, "Image2.cmp");
RasterImage image1 = codecs.Load(file1);
RasterImage image2 = codecs.Load(file2);
// Make sure the AutoDisposeImage property of the image box is set to true
imageBox.AutoDisposeImages = true;
// Set the first image into the image box
imageBox.Image = image1;
// Now set the second image into the image box (this disposes the first image since the AutoDisposeImage property is true)
imageBox.Image = image2;
// Try to access the first image, it generates a NullReferenceException exception since the image has been disposed
MessageBox.Show("Try to access the first image, it generates a NullReferenceException exception since the image has been disposed.");
try
{
int width = image1.Width;
MessageBox.Show(string.Format("Width is {0} pixels", width));
}
catch(NullReferenceException ex)
{
MessageBox.Show(ex.Message);
}
// Set the image to null (will dispose the second image as well)
imageBox.Image = null;
// Now re-load the two images
image1 = codecs.Load(file1);
image2 = codecs.Load(file2);
// Make sure the AutoDisposeImage property of the image box is set to false
imageBox.AutoDisposeImages = false;
// Set the first image into the image box
imageBox.Image = image1;
// Now set the second image into the image box (this will not disposes the first image since the AutoDisposeImage property is false)
imageBox.Image = image2;
// Try to access the first image, it should work fine this time
try
{
int width = image1.Width;
MessageBox.Show(string.Format("Width is {0} pixels", width));
}
catch(NullReferenceException ex)
{
MessageBox.Show(ex.Message);
}
// Set the image to null (will not dispose the second image)
imageBox.Image = null;
// We should now dispose the two images manually
image1.Dispose();
image2.Dispose();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
} |
SilverlightCSharp | Copy Code |
---|
|
SilverlightVB | Copy Code |
---|
|
Remarks
Requirements
Target Platforms: Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family
See Also