public DicomDataSet InsertElementAndSetValue(
long tag,
object value
)
public:
DicomDataSet^ InsertElementAndSetValue(
int64 tag,
Object^ value
)
tag
Tag of the item to find or insert.
value
value to insert
A reference to the DicomDataSet class (a 'this' pointer)
This method is used to set the value of an existing DICOM data set element, or if the existing element does not already exist, to insert the element and then set its value. The value parameter can be any supported DICOM value. For details on the value parameter, see SetValue
This method returns a reference to the DicomDataSet class so that it can be used as part of a 'fluent' interface. For an example of how this can be used efficiently to create a DICOM sequence, see BeginEditSequence
using Leadtools;
using Leadtools.Dicom;
///
private void DicomDataSet_InsertElementAndSetValueExample()
{
DicomDataSet ds = new DicomDataSet();
// Set a string
ds.InsertElementAndSetValue(null, false, DicomTag.PatientName, "Patient^Joe^MiddleName");
// Or use an overload
ds.InsertElementAndSetValue(DicomTag.PatientName, "Patient^Joe^MiddleName");
// This is how you check to see if the element got added -- for simplicity, we only check the first time
Console.WriteLine(ds.InsertElementAndSetValueResult.ToString());
// Set an array of strings
string[] names = { "One", "Two", "Three" };
ds.InsertElementAndSetValue(DicomTag.OtherPatientNames, names);
// Another way to do an array of strings
List<string> it = new List<string>();
it.Add("ORIGINAL");
it.Add("PRIMARY");
ds.InsertElementAndSetValue(DicomTag.ImageType, it.ToArray());
// Set an array of integers, that will be converted to strings
int[] namesInt = { 1, 2, 3 };
ds.InsertElementAndSetValue(DicomTag.PhysicianOfRecord, namesInt);
// Set a DicomDateValue
DicomDateValue dicomDate = new DicomDateValue(1961, 6, 5);
ds.InsertElementAndSetValue(DicomTag.PatientBirthDate, dicomDate);
// Set a DateTime
DateTime dateTime = new DateTime(2003, 5, 16);
ds.InsertElementAndSetValue(DicomTag.InstanceCreationDate, dateTime);
// Set an array of DateTime
DateTime[] dateTimeArray = { new DateTime(2000, 3, 8), new DateTime(2003, 5, 16) };
ds.InsertElementAndSetValue(DicomTag.DateOfLastCalibration, dateTimeArray);
// Insert a DicomTag and specify the Value Represention
// This is useful when a DICOM tag can have more than one value representation.
// For example, (5000,3000) CurveData can have a value representation of either OB or OW
int[] curveData = {1897, 1908, 1912, 1912, 1909 };
ds.InsertElementAndSetValue(null, false, DicomTag.CurveData, DicomVRType.OW, curveData);
ds.Save(Path.Combine(LEAD_VARS.ImagesDir, "test.dcm"), DicomDataSetSaveFlags.None);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}
DicomDataSet.SetValue(DicomElement, object)
DicomDataSet.InsertElementAndSetValue(long, object)
DicomDataSet.InsertElementAndSetValue(DicomElement, bool, long, object)
InsertElementAndSetValueResult Property