2016-08-25 18 views

答えて

2

あなたが探しているのは、まとめてReflectionです。具体的には、Type.GetField()を使用します。次のようなことができます:

void AssignValue(string VariableName, int VariableValue) 
{ 
    // Get the non-public instance variable (field) 
    FieldInfo field = GetType().GetField(VariableName, BindingFlags.NonPublic | BindingFlags.Instance); 

    // Set the variable's value for this instance of the type 
    field.SetValue(this, VariableValue); 
} 
+0

ありがとうございました。しかし、これらの変数が異なる型の場合はどうでしょうか?XValueはintですが、YValueはstringまたはboolです。任意の型を受け入れるようにメソッドのパラメータを変更するにはどうすればよいですか? – Forenkazan

+1

@Forenkazanパラメータリストの 'int VariableValue'を' object VariableValue'に変更するだけです。 – itsme86

+0

ありがとう、受け入れられました:)幸運といい日があります。 – Forenkazan

関連する問題