バージョン

TreatAsType プロパティ

UltraCalcManagerがコントロールの値を解釈する際に変換の目的で使用する型を取得または設定します。
シンタックス
'宣言
 
Public Property TreatAsType As Type
public Type TreatAsType {get; set;}
解説

TreatAsTypeは、数式にとって必ずしもネイティブな型ではない値を計算で使用する場合に役立ちます。たとえば、TextBoxコントロールのTextプロパティを使用して数値を入力する場合、デフォルトでは、CalcManagerはインバリアントカルチャを使用してTextBoxの内容をDoubleに変換します。これが常に適切な結果をもたらすとは限りません。この例でTreatAsTypeをDoubleに設定すると、TextBoxのTextは (インバリアントカルチャではなく) 現在のカルチャ

TreatAsTypeを設定すると、CalcManagerによってデータが検証され、適切な型に変換できない場合はエラーが表示されます。つまり、TreatAsTypeを設定している場合、コントロールのプロパティ値が適切な型に変換できなければErrorIconが表示されます。TreatAsTypeを設定していない場合は、そのコントロールをソースとして使用しているコントロールだけがエラーを表示できます。

使用例
Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinGrid
Imports Infragistics.Win.CalcEngine
Imports Infragistics.Win.UltraWinCalcManager

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' Ensure that the form contains an UltraCalcManager and two textboxes, 
        ' one named textBox1 and the other named textBox2.
        Dim calcSettings As CalcSettings = New CalcSettings()
        ' This formula will multiply the value of textBox2 by 2.
        calcSettings.Formula = "2 * [//textBox2]"
        calcSettings.PropertyName = "Text"
        Me.ultraCalcManager1.SetCalcSettings(Me.TextBox1, calcSettings)

        calcSettings = New CalcSettings()
        calcSettings.PropertyName = "Text"
        ' Treat the values of the textBox2 as double. Text property of TextBox is
        ' a string type and since textBox2 is a source of value to a formula, indicate 
        ' to the calc-manager that the value should be treated as a double rather
        ' than as a string. 
        calcSettings.TreatAsType = GetType(Double)
        Me.ultraCalcManager1.SetCalcSettings(Me.TextBox2, calcSettings)
    End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
using System.Diagnostics;
using Infragistics.Win.CalcEngine;
using Infragistics.Win.UltraWinCalcManager;

		private void Form1_Load(object sender, System.EventArgs e)
		{
			// Ensure that the form contains an UltraCalcManager and two textboxes, 
			// one named textBox1 and the other named textBox2.
			CalcSettings calcSettings = new CalcSettings( );
			// This formula will multiply the value of textBox2 by 2.
			calcSettings.Formula = "2 * [//textBox2]";
			calcSettings.PropertyName = "Text";
			this.ultraCalcManager1.SetCalcSettings( this.textBox1, calcSettings );

			calcSettings = new CalcSettings( );
			calcSettings.PropertyName = "Text";
			// Treat the values of the textBox2 as double. Text property of TextBox is
			// a string type and since textBox2 is a source of value to a formula, indicate 
			// to the calc-manager that the value should be treated as a double rather
			// than as a string. 
			calcSettings.TreatAsType = typeof( double );
			this.ultraCalcManager1.SetCalcSettings( this.textBox2, calcSettings );
		}
参照