-------------------------------------------------------------------- ScriptEngine -------------------------------------------------------------------- ScriptEngine は文字列を解析し、評価または実行可能な Expression オブジェクト または Statement オブジェクトを返します。 基本クラスは、単純な式評価だけを提供します。 実際のアプリケーションの多くでは、スクリプトで値などを割り当てることが できるように、エンジンに変数やカスタムオブジェクトを追加する必要があります。 それには、ScriptEngine から新しいクラスを派生させ、 次のメンバをオーバーライドする必要があります。 public virtual object GetObjectByName(string strName) この関数はオブジェクトを返す必要があります。このオブジェクトは、 単純な値型(たとえば「pi」が 3.14 を返す)でも、 プロパティやメソッドを持つオブジェクト(たとえば、myobj.Left)でもかまいません。デフォルトのプロパティを 取得して設定できるようにするには、オブジェクトが「Value」という プロパティを実装する必要があります(たとえば、myobj = 12 は、 myobj.Value = 12 と同じ意味です)。 このクラスには、2 つの主要メンバがあります。 - ParseExpression(str) は、高速に評価できる Expression オブジェクトを 返します。これは値を返します(オブジェクト型)。 - ParseStatement(str) は、実行できる Statement オブジェクトを返します。 これは何も返しません。 また、2 つの便利なヘルパーもあります。 - Evaluate(str) は、str 内の式を解析し、それを評価します。 - Execute(str) は、str 内の文を解析し、それを実行します。 これらのヘルパーは便利ですが、これらを繰り返し呼び出すことは、 ParseExpression/ParseStatement を使用して結果を評価/実行するよりも時間がかかります (後者は解析を一度しか行わないため)。
オブジェクト モデル
シンタックス
継承階層
System.Object
C1.Report.ScriptEngine.ScriptEngine
C1.Win.FlexReport.ScriptEngine.ScriptEngine
参照