Enum型をそのまま、とれるでしょうか?
Enumでなく、test.Statusとして宣言できますか?
下記でtgにはnullが入ってしまいます。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Enumrefrection { class Program { static void Main(string[] args) { test t1 = new test(15); Type ty = t1.GetType(); var tg = ty.GetField("Status", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic); var td = (Enum) tg.GetValue(t1); } } class test { private enum Status { None = 0, Rnu, Stop }; private int S1 = 0; public test(int s) { S1 = s; } } }
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/09 23:55
2017/09/09 23:56