asp.netページの特定のコントロールで、「Visible」プロパティがtrueまたはfalseに割り当てられているかどうかを調べようとしています。問題は、visibleプロパティが親のリストをクロールし、それらのいずれかが非表示として表示される場合、クエリされたコントロールも非表示として表示されることです。コントロール自体が何に設定されているかを知る必要があります。
私はいくつかの検索を行い、次の解決策を提供するAsp.NetでVisibleプロパティのセット/実際の値を取得する方法の投稿を見つけました
public static bool LocalVisible(this Control control){
var flags = typeof (Control)
.GetField("flags", BindingFlags.Instance | BindingFlags.NonPublic)
.GetValue(control);
return ! (bool) flags.GetType()
.GetProperty("Item", BindingFlags.Instance | BindingFlags.NonPublic)
.GetValue(flags, new object[] {0x10});
}
しかし、試してみると、GetPropertyで「あいまいな一致が見つかりました」というエラーが返されました。
誰かが私が間違っていることを指摘したり、私が欲しいものを手に入れる別の方法を示したりできますか?