例外 | 解説 |
---|---|
System.ArgumentException | control が計算ネットワーク内のいずれのUltraCalc拡張要素とも一致しない場合にスローされます。control はおそらく、現在の_CALCMANAGER_の適用範囲外にある外部のフォームまたはコンテナーに属しています。 control が実行時に動的に作成された場合、そのコントロールは、計算ネットワーク内での自身の IUltraCalcReference プロキシとなる CalcSettings を持っていないことがあります。この場合は、このメソッドを使用して値の変更を_CALCMANAGER_に通知する前に、control を指定して GetCalcSettings を呼び出し、 CalcSettings を作成する必要があります。 |
System.ArgumentNullException | control が null (Visual Basic .NET では Nothing) の場合にスローされます。 |
このメソッドを使用すると、計算可能コントロールの CalcSettings を手動でダーティにマークできます。値を提供するプロパティ(PropertyName で指定されたプロパティ)に対応する Property Changed イベントがある場合、_CALCMANAGER_はこのプロパティ変更通知を自動的にフックして受け取るので、このメソッドを呼び出す必要はありません。
たとえば、 PropertyName が"Text"の場合、_CALCMANAGER_は"TextChanged"イベントをフックします。TextChangedイベントがコントロールに存在しない場合、計算エンジンはコントロールの Text の変更を検出できません。したがって、この計算可能コントロールの Text がダーティになったことが検出されたら、その値に依存する数式をリフレッシュするために、 NotifyValueChanged を手動で呼び出す必要があります。
計算のソースではない計算可能コントロールが数式の計算結果を値として受け取る場合は、この通知は必要ありません。