>>696
合法だよ。

クラス宣言のネスト
クラスは、別のクラスのスコープ内でも宣言できます。
このようなクラスを "ネストされたクラス" と呼びます。
ネストされたクラスは、これを囲むクラスのスコープにあるとみなされ、
このスコープ内で利用できます。
ネストされたクラスを囲むクラスのスコープの外から、このネストされたクラスを参照するには、
完全な限定名を使います。

(MSDNより)