summaryrefslogtreecommitdiff
path: root/Decompiler/Gestor.Application.Helpers/BindingEnumHelper.cs
diff options
context:
space:
mode:
authorLucas Faria Mendes <lucas.fariamo08@gmail.com>2026-03-30 15:29:41 +0000
committerLucas Faria Mendes <lucas.fariamo08@gmail.com>2026-03-30 15:29:41 +0000
commit225aa1499e37faf9d38257caabbadc68d78b427e (patch)
tree102bb7a40c58595348ae9d3c7076201759fe0720 /Decompiler/Gestor.Application.Helpers/BindingEnumHelper.cs
parent1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1 (diff)
downloadgestor-225aa1499e37faf9d38257caabbadc68d78b427e.tar.gz
gestor-225aa1499e37faf9d38257caabbadc68d78b427e.zip
decompiler.com
Diffstat (limited to 'Decompiler/Gestor.Application.Helpers/BindingEnumHelper.cs')
-rw-r--r--Decompiler/Gestor.Application.Helpers/BindingEnumHelper.cs45
1 files changed, 45 insertions, 0 deletions
diff --git a/Decompiler/Gestor.Application.Helpers/BindingEnumHelper.cs b/Decompiler/Gestor.Application.Helpers/BindingEnumHelper.cs
new file mode 100644
index 0000000..aa28e3a
--- /dev/null
+++ b/Decompiler/Gestor.Application.Helpers/BindingEnumHelper.cs
@@ -0,0 +1,45 @@
+using System;
+using System.ComponentModel;
+using System.Text;
+
+namespace Gestor.Application.Helpers;
+
+public class BindingEnumHelper
+{
+ public static string ConcatenarDescricoesEnum<TEnum>(string valores) where TEnum : Enum
+ {
+ if (valores == null)
+ {
+ return null;
+ }
+ return ConcatenarDescricoesEnum<TEnum>(Array.ConvertAll(valores.Split(new char[1] { ',' }), int.Parse));
+ }
+
+ private static string ConcatenarDescricoesEnum<TEnum>(int[] valores) where TEnum : Enum
+ {
+ StringBuilder stringBuilder = new StringBuilder();
+ foreach (int num in valores)
+ {
+ if (Enum.IsDefined(typeof(TEnum), num))
+ {
+ string text = ObterDescricaoEnum((TEnum)Enum.ToObject(typeof(TEnum), num));
+ stringBuilder.Append(text + ", ");
+ }
+ else
+ {
+ stringBuilder.Append("Valor desconhecido, ");
+ }
+ }
+ return stringBuilder.ToString().TrimEnd(',', ' ');
+ }
+
+ private static string ObterDescricaoEnum<TEnum>(TEnum valor) where TEnum : Enum
+ {
+ DescriptionAttribute[] array = (DescriptionAttribute[])valor.GetType().GetField(valor.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), inherit: false);
+ if (array != null && array.Length != 0)
+ {
+ return array[0].Description;
+ }
+ return valor.ToString();
+ }
+}