Поделиться через


CodePropertySetValueReferenceExpression Класс

Определение

Представляет аргумент значения вызова метода набора свойств внутри метода набора свойств.

public ref class CodePropertySetValueReferenceExpression : System::CodeDom::CodeExpression
public class CodePropertySetValueReferenceExpression : System.CodeDom.CodeExpression
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodePropertySetValueReferenceExpression : System.CodeDom.CodeExpression
type CodePropertySetValueReferenceExpression = class
    inherit CodeExpression
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodePropertySetValueReferenceExpression = class
    inherit CodeExpression
Public Class CodePropertySetValueReferenceExpression
Inherits CodeExpression
Наследование
CodePropertySetValueReferenceExpression
Атрибуты

Примеры

В этом примере демонстрируется использование CodePropertySetValueReferenceExpression для представления аргумента значения, передаваемого в блок инструкции набора свойств.

// Declares a type.
CodeTypeDeclaration^ type1 = gcnew CodeTypeDeclaration( "Type1" );

// Declares a constructor.
CodeConstructor^ constructor1 = gcnew CodeConstructor;
constructor1->Attributes = MemberAttributes::Public;
type1->Members->Add( constructor1 );

// Declares an integer field.
CodeMemberField^ field1 = gcnew CodeMemberField( "System.Int32","integerField" );
type1->Members->Add( field1 );

// Declares a property.
CodeMemberProperty^ property1 = gcnew CodeMemberProperty;

// Declares a property get statement to return the value of the integer field.
property1->GetStatements->Add( gcnew CodeMethodReturnStatement( gcnew CodeFieldReferenceExpression( gcnew CodeThisReferenceExpression,"integerField" ) ) );

// Declares a property set statement to set the value to the integer field.
// The CodePropertySetValueReferenceExpression represents the value argument passed to the property set statement.
property1->SetStatements->Add( gcnew CodeAssignStatement( gcnew CodeFieldReferenceExpression( gcnew CodeThisReferenceExpression,"integerField" ),gcnew CodePropertySetValueReferenceExpression ) );
type1->Members->Add( property1 );

// A C# code generator produces the following source code for the preceeding example code:
//    public class Type1 
//    {
//
//        private int integerField;
//
//        public Type1() 
//        {
//        }
//                            
//        private int integerProperty 
//        {
//            get 
//            {
//                return this.integerField;
//            }
//            set 
//            {
//                this.integerField = value;
//            }
//        }
//    }
// Declares a type.
CodeTypeDeclaration type1 = new CodeTypeDeclaration("Type1");

// Declares a constructor.
CodeConstructor constructor1 = new CodeConstructor();
constructor1.Attributes = MemberAttributes.Public;
type1.Members.Add( constructor1 );

// Declares an integer field.
CodeMemberField field1 = new CodeMemberField("System.Int32", "integerField");
type1.Members.Add( field1 );

// Declares a property.
CodeMemberProperty property1 = new CodeMemberProperty();
// Declares a property get statement to return the value of the integer field.
property1.GetStatements.Add( new CodeMethodReturnStatement( new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "integerField") ) );
// Declares a property set statement to set the value to the integer field.
// The CodePropertySetValueReferenceExpression represents the value argument passed to the property set statement.
property1.SetStatements.Add( new CodeAssignStatement( new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "integerField"),
                                    new CodePropertySetValueReferenceExpression() ) );
type1.Members.Add( property1 );

// A C# code generator produces the following source code for the preceeding example code:

//    public class Type1
//    {
//
//        private int integerField;
//
//        public Type1()
//        {
//        }
//
//        private int integerProperty
//        {
//            get
//            {
//                return this.integerField;
//            }
//            set
//            {
//                this.integerField = value;
//            }
//        }
//    }
' Declares a type.
Dim type1 As New CodeTypeDeclaration("Type1")

' Declares a constructor.
Dim constructor1 As New CodeConstructor()
constructor1.Attributes = MemberAttributes.Public
type1.Members.Add(constructor1)

' Declares an integer field.
Dim field1 As New CodeMemberField("System.Int32", "integerField")
type1.Members.Add(field1)

' Declares a property.
Dim property1 As New CodeMemberProperty()
' Declares a property get statement to return the value of the integer field.
property1.GetStatements.Add(New CodeMethodReturnStatement(New CodeFieldReferenceExpression(New CodeThisReferenceExpression(), "integerField")))
' Declares a property set statement to set the value to the integer field.
' The CodePropertySetValueReferenceExpression represents the value argument passed to the property set statement.
property1.SetStatements.Add(New CodeAssignStatement(New CodeFieldReferenceExpression(New CodeThisReferenceExpression(), "integerField"), New CodePropertySetValueReferenceExpression()))
type1.Members.Add(property1)

' A Visual Basic code generator produces the following source code for the preceeding example code:

'   Public Class Type1
'
'       Private integerField As Integer
'
'       Public Sub New()
'           MyBase.New()
'       End Sub
'
'       Private Property integerProperty() As Integer
'           Get
'               Return Me.integerField
'           End Get
'           Set(ByVal Value As Integer)
'               Me.integerField = value
'           End Set
'       End Property
'   End Class

Комментарии

CodePropertySetValueReferenceExpression представляет аргумент value вызова метода набора свойств в объявлении метода набора свойств.

Метод набора свойств обычно назначает или использует значение, присваиваемое свойству. В методе набора свойств это значение представлено неявной переменной, представленной CodePropertySetValueReferenceExpressionв CodeDOM .

Конструкторы

CodePropertySetValueReferenceExpression()

Инициализирует новый экземпляр класса CodePropertySetValueReferenceExpression.

Свойства

UserData

Получает определяемые пользователем данные для текущего объекта.

(Унаследовано от CodeObject)

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к