I would recommend that you abandon this approach. Doing lots of private reflection like this is not something you should be basing production code on, its very brittle and downright forbidden in some contexts. Frankly, you’re better off finding a 3rd party control that suits your needs such as www.infragistics.com
Or if that’s not an option you can probably create your own control in the amount of time you’ll have to sink into getting this to work.