You can use Convert.ChangeType():
[Flags]
private enum MyEnum1 : ulong
{
A =1,
B = 2
}
And then
MyEnum1 enum1 = MyEnum1.A | MyEnum1.B;
ulong changeType = (ulong) Convert.ChangeType(enum1, typeof (ulong));
UPDATE
Why TypeDescriptordoesnโt work?
According to the docs:
, TypeConverterAttribute. TypeConverterAttribute, , .
TypeDescriptor TypeConvertor ExpandableObjectConverter, Convert IConvertible.