Я предполагаю, что sq - это последовательность ...
Я не работал с openDicom, но я почти уверен, что то, что вы там делаете, не даст вам результатов.want.
У вас есть один тег, описание и переменная val_rep, но вы заполняете их, используя foreach, то есть последний DataElement в Sequence будет единственными полученными вами значениями.Вы можете достичь того же эффекта, используя:
string tag = sq[sq.Count - 1].Tag.ToString();
string description = sq[sq.Count -1].VR.Tag.GetDictionaryEntry().Description;
string val_rep = sq[sq.Count - 1].VR.ToString();
Таким образом, получая последний набор значений из последовательности.Я полагаю, что вы обнаружите, что если вы выполните шаг foreach во время его выполнения, он загрузит все различные элементы DataElements, содержащиеся в вашем файле DICOM.
Не стесняйтесь возвращать комментарий или публиковать дополнительную информацию в оригинале.напишите, если я далеко от базы здесь.