Revision: 17799
Updated Code
at May 20, 2010 09:53 by jimfred
Updated Code
// Given this enum...
[FlagsAttribute]
enum MyStatus: ushort
{
Bit0 = 0x0000,
Bit1 = 0x0001,
Bit2 = 0x0002,
Bit3 = 0x0004
};
// Cast a 0x7 to MyStatus and render a string for testing/demonstration purposes:
((MyStatus)0x7).ToString() results in string "Bit0, Bit1, Bit2"
// To test a bit, use code of the form. Assumes status is a MyStatus.
if ( Convert.ToBoolean( status & MyStatus.Bit0) )
Revision: 17798
Updated Code
at May 20, 2010 09:49 by jimfred
Updated Code
// Given this enum...
[FlagsAttribute]
enum MyStatus: ushort
{
Bit0 = 0x0000,
Bit1 = 0x0001,
Bit2 = 0x0002,
Bit3 = 0x0004
};
// Cast a 0x7 to MyStatus and render a string for testing/demonstration purposes:
((MyStatus)0x7).ToString() results in string "Bit0, Bit1, Bit2"
// To test a bit, use code of the form
if ( Convert.ToBoolean( status & MyStatus.Bit0) )
Revision: 17797
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at September 14, 2009 13:23 by jimfred
Initial Code
// Given this enum...
[FlagsAttribute]
enum MyStatus: uint
{
Bit0 = 0,
Bit1 = 1,
Bit2 = 2,
Bit3 = 4
};
// Cast a 0x7 to MyStatus and render a string for testing/demonstration purposes:
((Ts2Dll.Ts2Dll.MyStatus)0x7).ToString() results in string "Bit0, Bit1, Bit2"
Initial URL
http://msdn.microsoft.com/en-us/library/system.flagsattribute%28VS.71%29.aspx
Initial Description
FlagsAttribute is useful to render a string indicating which status bits or flag bits are turned on. The resulting string will contain the name of the enum bit that is turned on without needed to maintain a separate string table. Note the inheritance-like syntax that determines the size of the enum. This is useful to adjust the size of enum structure members for marshaling with C.
Initial Title
Render names of C# bitfields using enums and FlagsAttribute. Also, adjusting size of enum using, like ushort, for marshalling p
Initial Tags
Initial Language
C#