private MemberAdapter GetMemberAdapter(TreeNodeAdv node)
{
if (node.Tag != null && !string.IsNullOrEmpty(DataPropertyName))
{
Type type = node.Tag.GetType();
PropertyInfo pi = type.GetProperty(DataPropertyName);
if (pi != null)
return new MemberAdapter(node.Tag, pi);
else
{
FieldInfo fi = type.GetField(DataPropertyName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
if (fi != null)
return new MemberAdapter(node.Tag, fi);
}
}
return MemberAdapter.Empty;
}