en essayant d'ajouter un nouveau tag à mon DicomFile.DataSet dans ClearCanvas.ClearCanvas DicomFile.DataSet - Comment ajouter un nouveau Tag?
Je remarque qu'il existe la méthode "DicomFile.DataSet.RemoveAttribute" mais pas de méthode "AddAtribute". Donc, j'ai regardé la méthode "LoadDicomFields" & "SaveDicomFields" mais jusqu'à présent, ne peut pas sembler les faire fonctionner. J'ai essayé de passer un "DicomFieldAttribute" à ces méthodes, mais en vain.
Qu'est-ce qui me manque ici? Ou que dois-je faire pour ajouter une nouvelle balise au DataSet?
DicomFieldAttribute c = new DicomFieldAttribute(tag);
List<DicomFieldAttribute> cs = new List<DicomFieldAttribute>();
cs.Add(c);
DicomFile.DataSet.LoadDicomFields(cs);
DicomFile.DataSet.SaveDicomFields(cs);
if(DicomFile.DataSet.Contains(tag))
{
tag = 0; //BreakPoint never reached here
}
Ou j'ai essayé cela aussi ::
DicomFieldAttribute c = new DicomFieldAttribute(tag);
DicomFile.DataSet.LoadDicomFields(c);
DicomFile.DataSet.SaveDicomFields(c);
if(DicomFile.DataSet.Contains(tag))
{
tag = 0; //BreakPoint never reached here
}
Ive été bloqué sur ce qui semble être une tâche triviale.
« file.DataSet [DicomTags. SopInstanceUid] .SetStringValue ("1.1.1"); " Fonctionne bien, mais quand j'essaie quelque chose comme :: "file.DataSet [1610690560] .SetStringValue (" 1.1.1 ");" il jette l'erreur (balise invalide: 60013000). Aussi la raison pour laquelle je fais cela est parce que je veux ajouter une nouvelle superposition (60xx). Je remarque qu'il n'y a aucune méthode comme "SetByteArrayValue" que je peux utiliser pour définir les nouvelles données de recouvrement, qui est un tableau d'octets. Tnx pour la réponse btw. – zezba9000
60013000 est considéré comme un tag privé, car c'est un groupe impair. Il existe une forme différente de l'indexeur qui utilise un objet DicomTag. Vous devrez peut-être créer un objet DicomTag pour l'étiquette que vous voulez et l'utiliser pour accéder à l'indexeur. –