我正在使用telerik工具,并且在ajax调用中有一个从类库运行代码服务器端的工具。
此控件可以来自任何页面。我可以通过传入的telerik对象访问该页面。
现在,其中一些页面有一个我想要访问的属性,但我想保持它的通用性。
我可以将页面强制转换为特定页面类型并公开属性,但每次将该属性添加到页面时都需要更新类库。
我想知道的是,如果我有办法检查页面上是否存在某个属性,那么如果有,则访问它?
((Telerik.Web.UI.ControlItemContainer)((RadComboBox)o)).Page
这是我访问页面的方式,它只返回页面对象。我想检查一下该页面对象是否包含一个属性而没有强制转换它。
或者,如果我可以使用gettype()来转换页面,那也可以。
由于
答案 0 :(得分:1)
您可以使用reflection:
System.Reflection.PropertyInfo propInfo =
theObjectYouWantToReflect.GetType().GetProperty("YourPropertyName");
if (propInfo != null)
{
object value = propInfo.GetValue(Page, null);
// ...
}