リフレクションを使ったインデクサの呼び出し
public class Hoge { public string this[int i] { get { return (i * 2).ToString(); } } } class Program { static void Main(string args) { object o = new Hoge(); object result = o.GetType().InvokeMember("Item", BindingFlags.GetProperty, null, o, new object{ 1 }); Console.WriteLine(result.ToString()); Console.ReadKey(); } }
...InvokeMember("Item", BindingFlags.GetProperty, null,....
インデクサは実は"Item"という名前のプロパティのことらしい