最近の質問では、リフレクションを介していくつかの値を取得したいと考えています。リフレクションのおかげで、オブジェクトに値を設定したいと思います。
私はこれを書きたい:
private void AppliquerColonnesPersonnalisation(Control control, Propriete propriete, PropertyInfo Info)
{
UltraGrid grille = (UltraGrid)control;
SortedList<int,string> sortedOrderedColumns = new SortedList<int,string>();
if (grille != null)
{
// I want to write MapPropertyInfo method
ColumnsCollection cols = MapPropertyInfo(Info);
PropertyInfo には、ColumnsCollection の型が含まれています。PropertyInfo をオブジェクトに「マップ」して、後にいくつかのプロパティを定義したいだけです。例:
cols[prop.Nom].Hidden = false;
出来ますか ?
よろしくお願いします、
フロリアン
編集: GenericTypeTea ソリューションを試しましたが、問題があります。ここに私のコードスニペット:
private void AppliquerColonnesPersonnalisation(Control control, Propriete propriete, PropertyInfo Info)
{
UltraGrid grille = (UltraGrid)control;
ColumnsCollection c = grille.DisplayLayout.Bands[0].Columns;
// Throw a not match System.Reflection.TargetException
ColumnsCollection test = Info.GetValue(c,null) as ColumnsCollection;
SortedList<int,string> sortedOrderedColumns = new SortedList<int,string>();
しかし、TargetException がスローされます