3

の動作を変更して、次のDataColumn.Expressionように記述したいと思います。

DataColumn.Expression = "MyMethod(Price)"

MyMethod を呼び出し、Price 列から値を渡し、評価された値を表示します。

どうすればこれを達成できますか?

4

2 に答える 2

4

ありえない。Expression プロパティの背後にある式パーサーは単純であり、拡張できません。任意の関数呼び出しを行うことは、その機能の 1 つではありません。これを回避するにはいくつかの方法があります。特に、コストのかかるリフレクション ルックアップを必要としない方法です。たとえば、DataTable.RowChanged イベントを考えてみましょう。

于 2009-11-10T19:50:12.160 に答える
1

これを回避する方法は、関数をデータベースやスプレッドシートのような計算フィールドにすることです。高度な計算フィールドを作成することができます。関数を式に書き直してから、[Price] を使用してソース列を参照する必要があります。あなたの質問を理解しているので、意図したことを実行できます。式の構文は、ここにあります。

これは質問に対する遅い回答であることは知っていますが、他の人がこれを行う方法を検討するのに役立つかもしれません.

于 2010-12-10T02:40:05.777 に答える