C#メトロスタイルでIsSubclassOf
またはIsAssignableFrom
のための任意の代替はありますか?IsSubclassOfまたはIsAssignableFromのための任意の代替
私はメトロで、このコードの実行を作るしようとしているが、代替手段を見つけることができません。
if ((ui.GetType() == type) || (ui.GetType().IsSubclassOf(type)))
{
return true;
}
C#メトロスタイルでIsSubclassOf
またはIsAssignableFrom
のための任意の代替はありますか?IsSubclassOfまたはIsAssignableFromのための任意の代替
私はメトロで、このコードの実行を作るしようとしているが、代替手段を見つけることができません。
if ((ui.GetType() == type) || (ui.GetType().IsSubclassOf(type)))
{
return true;
}
多くの反射方法は、System.Reflection.TypeInfo
クラスにあります。
あなたはSystem.Reflection.IntrospectionExtensions
によって提供さGetTypeInfo
拡張メソッドを使用して、あなたのType
ためTypeInfo
のインスタンスを取得することができます:
using System.Reflection;
// ...
ui.GetType().GetTypeInfo().IsSubclassOf(type)
あなたはこれを使用することができます:これはメトロで動作
using System.Reflection;
// ...
ui.GetTypeInfo().IsAssignableFrom(type.GetTypeInfo());
を。
反射法の多くは、メトロスタイルWindows 8の.NET Frameworkで利用できません。これが私が代替案を探していた理由です。しかし、私は代替がないと思うので、明示的な型で "is"または "as"を使用する必要があるようです。 –
@MichaelSync:私はあなたがなぜ代替手段がないと言うのか理解できません。 'TypeInfo'はあなたのために働かないのですか?そうでない場合は、どうしてですか? –
メトロ網の参照を見てください。 http://msdn.microsoft.com/en-us/library/windows/apps/hh441595(v=vs.110).aspx ..種類がたくさんあり、正確に、何を探してるんですか.. –