Formula プロパティは値を計算するために使用され、PropertyName プロパティによって示されているように、コントロールのプロパティにその値が設定されます。PropertyName が設定されていない、または無効なプロパティに設定されている場合、計算は実行されません。
数式を持つ数式にReadOnlyをマークすることを強く推奨します。数式計算のターゲットとなるコントロールはユーザーによって編集されません。ユーザーが編集した値は計算された値でオーバーライドされるからです。また、コントロールが数式のターゲットおよびソースの両方として使用される場合、ソース値は常に計算された値を使用し、ユーザー編集後にコントロールに表示された値を使用しません。
Imports Infragistics.CalcEngine Imports Infragistics.Win.UltraWinCalcManager Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Suspend calculation while we are adding new items into the calc network Me.UltraCalcManager1.SuspendCalc() Dim calcSettings As CalcSettings 'Set CalcSettings properties on TextBox1 calcSettings = Me.UltraCalcManager1.GetCalcSettings(Me.textBox1) calcSettings.PropertyName = "Text" calcSettings.Alias = "Height" calcSettings.ErrorValue = 1 'Set CalcSettings properties on TextBox2 calcSettings = Me.UltraCalcManager1.GetCalcSettings(Me.textBox2) calcSettings.PropertyName = "Text" calcSettings.Alias = "Width" calcSettings.ErrorValue = 1 'Create a NamedReference to calulate the area. Dim namedReference As NamedReference namedReference = Me.UltraCalcManager1.NamedReferences.Add("Area", "[//Height] * [//Width]") namedReference.ErrorValue = "Error" 'Everything is added, so resume Me.UltraCalcManager1.ResumeCalc() End Sub Private Sub UltraCalcManager1_CalculationsCompleted(ByVal sender As Object, ByVal e As System.EventArgs) Handles UltraCalcManager1.CalculationsCompleted If (Me.UltraCalcManager1.NamedReferences.Exists("Area")) Then Me.textBox3.Text = Me.UltraCalcManager1.NamedReferences("Area").FormulaResult.Value.ToString() End If End Sub
using Infragistics.CalcEngine; using Infragistics.Win.UltraWinCalcManager; private void Form1_Load(object sender, System.EventArgs e) { //Suspend calculation while we are adding new items into the calc network this.ultraCalcManager1.SuspendCalc(); CalcSettings calcSettings = null; //Set CalcSettings properties on TextBox1 calcSettings = this.ultraCalcManager1.GetCalcSettings(this.textBox1); calcSettings.PropertyName = "Text"; calcSettings.Alias = "Height"; calcSettings.ErrorValue = 1; //Set CalcSettings properties on TextBox2 calcSettings = this.ultraCalcManager1.GetCalcSettings(this.textBox2); calcSettings.PropertyName = "Text"; calcSettings.Alias = "Width"; calcSettings.ErrorValue = 1; //Create a NamedReference to calulate the area. NamedReference namedReference = null; namedReference = this.ultraCalcManager1.NamedReferences.Add("Area", "[//Height] * [//Width]"); namedReference.ErrorValue = "Error"; //Everything is added, so resume this.ultraCalcManager1.ResumeCalc(); } private void ultraCalcManager1_CalculationsCompleted(object sender, System.EventArgs e) { if ( this.ultraCalcManager1.NamedReferences.Exists("Area") ) { this.textBox3.Text = this.ultraCalcManager1.NamedReferences["Area"].FormulaResult.Value.ToString(); } }