Invoke Indexed Property Demo : Properties « Class « C# / CSharp Tutorial






using System;
using System.Reflection;
using System.Globalization;
  class Class1
  {
  
  
    DateTime[] dateTimes = new DateTime[10];
    public DateTime this[int index]
    {
      get{ return dateTimes[index]; }
      set{ dateTimes[index] = value;}
    }
    
    
    private DateTime dateOfBirth;
    public DateTime DateOfBirth
    {
        get{ return dateOfBirth; }
        set{ dateOfBirth = value; }
    }
      
    public void Test()
    {
      Console.WriteLine("Test method called");
    }
    
    
    private string field;
    
    public string Property
    { 
      get{ return field; }
      set{ field = value; }
    }
    
  }


    class MainClass{
    
    static void Main(string[] args)
    {
      Type type = typeof(Class1);
      Console.WriteLine(type.FullName);
      
      object o = Activator.CreateInstance(type);
      type.InvokeMember( "Item", 
        BindingFlags.Instance | 
        BindingFlags.SetProperty | BindingFlags.Public, 
        null, o, new object[]{0, new DateTime(1966, 2, 12)});
        
      Console.WriteLine(((Class1)o)[0].ToString());

    }
    }








7.38.Properties
7.38.1.Properties and its Restrictions
7.38.2.A simple property example
7.38.3.Readonly property
7.38.4.Property Getter and Setter
7.38.5.Define accessors for Properties with get and set
7.38.6.Use properties to set and get private members.
7.38.7.Add Length property to MyArray
7.38.8.Property And its associated Field
7.38.9.Add statement to the getter and setter of a property
7.38.10.Combine readonly and read only property
7.38.11.Put logic to property setter
7.38.12.Do calculation with Property
7.38.13.Invoke Indexed Property Demo
7.38.14.throw Exception from property setting
7.38.15.Write Only Properties and