バイトのMSDNページには、次のようにバイトを宣言できると書かれています。
byte myByte = 255;
そしてそれ
上記の宣言では、整数リテラル255が暗黙的にintからbyteに変換されています。整数リテラルがバイトの範囲を超えると、コンパイルエラーが発生します。
だから私は、次のようにコンパイルエラーが発生する理由を理解するのに苦労しています'int'型を'byte'に暗黙的に変換できません)
byte value = on ? 1 : 0; // on is defined as a bool earlier
何か違いがあれば、これをWindowsストアアプリプロジェクトとしてVS2012でコンパイルしています。