我有两个类,一个继承自另一个
public class A
{
public string prop1 { get; set; }
public string prop2 { get; set; }
public string prop3 { get; set; }
}
public class B : A
{
public string prop4 { get; set; }
}
现在我创建一个B类列表并将其转换为类B
List<B> BList = new List<B>();
BList = new List<B>() { new B() { prop1 = "1", prop2 = "2", prop3 = "3", prop4 = "4" } };
List<A> AList = BList.Cast<A>().ToList();
如何删除/避免从基类中显示属性?
答案 0 :(得分:1)
您无法删除它,但可以在调试器中以不同方式显示它。 使用调试器类型代理documented here以您喜欢的方式在调试器中显示类。列表和词典以这种方式完成,因此您可以使用反编译器(如ILSpy)查看源代码。
例如:
proc make-me-a-dialog {}
global waiting
toplevel .dialog_TC
# ...
add_entry { something ... }
# ...
set dlg .dialog_TC
bind $dlg <Return> [list set waiting($dlg) 1]
bind $dlg <Escape> [list set waiting($dlg) 0]
# Trapping a window manager message; slightly different to normal events for historical reasons
wm protocol $dlg WM_DELETE_WINDOW [list set waiting($dlg) 0]
vwait waiting($dlg)
if {waiting($dlg)} {
return $ValueIndicatingOK
} else {
return $ValueIndicatingCancel
}
}
我认为应该这样做,但我还没有测试过。