Vous pourriez avec la réflexion, mais je soupçonne dans ce cas, theere est un meilleur design que vous pourriez mettre en œuvre qui serait mieux que d'utiliser la réflexion. Si vous fournissez un peu plus d'informations, probablement l'un de nous pourrait vous aider avec cela.
Déclarez une variable dictionnaire:
Dictionary<string, RectangleShape> rectangleDictionary = new Dictionary<string, RectangleShape>();
Alors, où vous normallay écrire "matrix1_2 = somevalue;", au lieu écrire:
rectangleDictionary.add("matrix1_2", somevalue)
vous serez alors en mesure de travailler avec le nom de variable:
rectangleDictionary["matrix1_2"] = someothervalue;
rectangleDictionary["matrix1_2"].someproperty = something;
Microsoft.VisualBasic.PowerPacks.RectangleShape y = rectangleDictionary["matrix1_2"];
Je pense que vous confondez le nom et la valeur d'une variable. Ou je suis confus. – kenny
C'est * possible * d'utiliser la réflexion, mais ce n'est pas une bonne idée, habituellement. Que veux-tu accomplir? Il y a probablement un meilleur moyen. – Blorgbeard
dupe possible http://stackoverflow.com/questions/4629/c-sharp-eval-equivalent – MikeM