Specifies what element to associate to the object this attribute is bound to.
Object Model
Syntax
Visual Basic (Declaration) | |
---|
<AttributeUsageAttribute(ValidOn=AttributeTargets.Class Or _
AttributeTargets.Property Or _
AttributeTargets.Field,
AllowMultiple=False,
Inherited=True)>
Public Class ElementAttribute
Inherits System.Attribute
Implements _Attribute |
Example
This example gets and sets custom DICOM class information.
Visual Basic | Copy Code |
---|
Public Class MyPatientInfo
Private _PatientName As PersonName
<Element(DicomTag.PatientName,Optional := True), TypeConverter(GetType(PersonNameConverter))> _
Public Property PatientName() As PersonName
Get
Return _PatientName
End Get
Set
_PatientName = Value
End Set
End Property
Private _PatientID As String
<Element(DicomTag.PatientID,Optional:=False)> _
Public Property PatientID() As String
Get
Return _PatientID
End Get
Set
_PatientID = Value
End Set
End Property
End Class
<Test> _
Public Sub ExtractInfoExample()
Dim dicomFileNameIn As String = LeadtoolsExamples.Common.ImagesPath.Path & "IMAGE2.dcm"
Dim info As MyPatientInfo = Nothing
' Initialize DICOM engine
DicomEngine.Startup()
Dim ds As DicomDataSet = New DicomDataSet()
' Load an existing DICOM file
ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None)
' Fill the class with the appropriate dicom info
info = ds.Get(Of MyPatientInfo)()
If Not info Is Nothing Then
'
' Display information extracted from DICOM file.
'
Console.WriteLine("Patient Name: " & info.PatientName.Full)
Console.WriteLine("Patient ID: " & info.PatientID)
'
' Change the patient id
'
info.PatientID = "12345"
ds.Set(info)
If ds.GetValue(Of String)(DicomTag.PatientID, String.Empty) = "12345" Then
Console.WriteLine("Patient successfully changed")
End If
End If
DicomEngine.Shutdown()
End Sub |
C# | Copy Code |
---|
public class MyPatientInfo
{
private PersonName _PatientName;
[Element(DicomTag.PatientName,Optional = true)]
[TypeConverter(typeof(PersonNameConverter))]
public PersonName PatientName
{
get { return _PatientName; }
set { _PatientName = value; }
}
private string _PatientID;
[Element(DicomTag.PatientID,Optional=false)]
public string PatientID
{
get { return _PatientID; }
set { _PatientID = value; }
}
}
public void ExtractInfoExample()
{
string dicomFileNameIn = LeadtoolsExamples.Common.ImagesPath.Path + "IMAGE2.dcm";
MyPatientInfo info = null;
// Initialize DICOM engine
DicomEngine.Startup();
DicomDataSet ds = new DicomDataSet();
// Load an existing DICOM file
ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None);
// Fill the class with the appropriate dicom info
info = ds.Get<MyPatientInfo>();
if (info != null)
{
//
// Display information extracted from DICOM file.
//
Console.WriteLine("Patient Name: " + info.PatientName.Full);
Console.WriteLine("Patient ID: " + info.PatientID);
//
// Change the patient id
//
info.PatientID = "12345";
ds.Set(info);
if (ds.GetValue<string>(DicomTag.PatientID, string.Empty) == "12345")
Console.WriteLine("Patient successfully changed");
}
DicomEngine.Shutdown();
} |
Inheritance Hierarchy
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7
See Also