SetBitmapListValue example for C#

//This example uses the predefined variable “LEADRasterView1” of type “AxLEADRasterView” from “LEADTOOLS Toolkit”.
//This example uses the predefined variable “LEADRasterView2” of type “AxLEADRasterView” from “LEADTOOLS Toolkit”.
//LEADDICOM1 is a DICOM Dataset defined outside this method
private void TestSetBitmapListValue()
{
   int lCount = 0;
   short nRet = 0;
   LTRASTERIOLib.LEADRasterIO IO = new LTRASTERIOLib.LEADRasterIO();
   LTRASTERPROCLib.LEADRasterProcess Process = new LTRASTERPROCLib.LEADRasterProcess();
   LEADDICOM1.EnableMethodErrors = false;


   //move to the root element
   LEADDICOM1.MoveFirstElement(false);
   LEADDICOM1.MoveRootElement();


   //insert a new element for the BitmapList Value
   nRet = LEADDICOM1.FindFirstElement((int)LTDICLib.DicomDataSetTagConstants9.TAG_PIXEL_DATA, false);
   nRet = LEADDICOM1.DeleteElement();
   nRet = LEADDICOM1.InsertElement(false, (int)LTDICLib.DicomDataSetTagConstants9.TAG_PIXEL_DATA, (short)LTDICLib.DicomVRCodeConstants.VR_OB, false, 0);


   //load an image
   IO.Load(LEADRasterView1.Raster, "d:\\lead14\\dist\\images\\image1.cmp", 0, 1, 1);
   MessageBox.Show("Image loaded from File - Wait");


   //create a bitmap list
   LEADRasterView2.Raster.InsertBitmapListItem(0, LEADRasterView1.Raster.Bitmap);
   Process.Flip(LEADRasterView1.Raster);
   LEADRasterView2.Raster.InsertBitmapListItem(1, LEADRasterView1.Raster.Bitmap);
   Process.Reverse(LEADRasterView1.Raster);
   LEADRasterView2.Raster.InsertBitmapListItem(2, LEADRasterView1.Raster.Bitmap);


   //insert the image list into the element
   LEADDICOM1.BitmapList = LEADRasterView2.Raster.BitmapList;
   //set the bitmap list
   nRet = LEADDICOM1.SetBitmapListValue((int)LTDICLib.DicomImageCompressionConstants.DICOM_IMAGE_COMPRESSION_NONE, (int)LTDICLib.DicomImagePhotometricConstants.DICOM_IMAGE_PHOTOMETRIC_RGB, 0, 0, 0);
   if (nRet != 0)
   {
      MessageBox.Show("Error");
      return;
   }
   MessageBox.Show("Image set to Data Set - Wait");
   LEADDICOM1.BitmapList = 0;
   //free the value
   MessageBox.Show("ImageList cleared from memory - Wait");
   lCount = LEADDICOM1.GetBitmapCount();
   //get the bitmap list back
   if (nRet == 0)
   {
      LEADDICOM1.GetBitmapListValue(0, lCount, 0, (short)LTDICLib.DicomColorOrderConstants.ORDER_RGB, 0);
      LEADRasterView1.Raster.BitmapList = LEADDICOM1.BitmapList;
      LEADRasterView1.ForceRepaint();
   }
   LEADDICOM1.EnableMethodErrors = true;
   MessageBox.Show("ImageList loaded from Data Set - Wait");
}