ExpressionBuilder.GetCodeExpression メソッド
アセンブリ: System.Web (system.web.dll 内)

Public MustOverride Function GetCodeExpression ( _ entry As BoundPropertyEntry, _ parsedData As Object, _ context As ExpressionBuilderContext _ ) As CodeExpression
Dim instance As ExpressionBuilder Dim entry As BoundPropertyEntry Dim parsedData As Object Dim context As ExpressionBuilderContext Dim returnValue As CodeExpression returnValue = instance.GetCodeExpression(entry, parsedData, context)
public abstract CodeExpression GetCodeExpression ( BoundPropertyEntry entry, Object parsedData, ExpressionBuilderContext context )
public: virtual CodeExpression^ GetCodeExpression ( BoundPropertyEntry^ entry, Object^ parsedData, ExpressionBuilderContext^ context ) abstract
public abstract CodeExpression GetCodeExpression ( BoundPropertyEntry entry, Object parsedData, ExpressionBuilderContext context )
public abstract function GetCodeExpression ( entry : BoundPropertyEntry, parsedData : Object, context : ExpressionBuilderContext ) : CodeExpression
戻り値
プロパティの割り当てに使用される CodeExpression。

ExpressionBuilder クラスから継承するクラスには、GetCodeExpression 抽象メソッドが実装されている必要があります。
継承時の注意 カスタム式ビルダを実装する場合、コントロール プロパティに適切な型キャストを実行し、キャストした結果を CodeExpression オブジェクトで返す必要があります。
GetCodeExpression メソッドをオーバーライドして CodeExpression オブジェクトを返す方法を次のコード例に示します。
Public Overrides Function GetCodeExpression(ByVal entry _ As BoundPropertyEntry, ByVal parsedData As Object, ByVal context _ As ExpressionBuilderContext) As CodeExpression Dim type1 As Type = entry.DeclaringType Dim descriptor1 As PropertyDescriptor = _ TypeDescriptor.GetProperties(type1)(entry.PropertyInfo.Name) Dim expressionArray1(2) As CodeExpression expressionArray1(0) = New CodePrimitiveExpression(entry.Expression.Trim()) expressionArray1(1) = New CodeTypeOfExpression(type1) expressionArray1(2) = New CodePrimitiveExpression(entry.Name) Return New CodeCastExpression(descriptor1.PropertyType, _ New CodeMethodInvokeExpression(New CodeTypeReferenceExpression _ (MyBase.GetType()), "GetEvalData", expressionArray1)) End Function
public override CodeExpression GetCodeExpression(BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context) { Type type1 = entry.DeclaringType; PropertyDescriptor descriptor1 = TypeDescriptor.GetProperties(type1)[entry.PropertyInfo.Name]; CodeExpression[] expressionArray1 = new CodeExpression[3]; expressionArray1[0] = new CodePrimitiveExpression(entry.Expression.Trim()); expressionArray1[1] = new CodeTypeOfExpression(type1); expressionArray1[2] = new CodePrimitiveExpression(entry.Name); return new CodeCastExpression(descriptor1.PropertyType, new CodeMethodInvokeExpression(new CodeTypeReferenceExpression(base.GetType()), "GetEvalData", expressionArray1)); }

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- ExpressionBuilder.GetCodeExpression メソッドのページへのリンク