The case was solved by using following syntax: Enum.ToObject(EnumType, dt.Rows[0][i])
I stuck at different point now: when I collect changes from RadPropertyGrid the cells' values which are binded to my enums are string values of enum, not int. I mean that for, say, enum Enum1 { Item0 = 0, Item1 = 1 } RadPropertyGridItem.Value is Item0 whilst expected is 0. The RadPropertyGrid still displays the expected "Item0".