Попробуйте следующее:
<iframe src="test1.pdf" scrolling="no" frameborder="0" height="100%" width="100%" style="position:absolute; clip:rect (190px,1100px,800px,250px);">
Ecma 335 указывает (но не требует), что компиляторы используют get_/set_ префиксы (глава 22.28). Я не знаю языка, который повреждает ту рекомендацию. Помощь:
public static PropertyInfo GetPropFromMethod(Type t, MethodInfo method) {
if (!method.IsSpecialName) return null;
return t.GetProperty(method.Name.Substring(4),
BindingFlags.Instance | BindingFlags.Static | BindingFlags.NonPublic);
}
Ну, метод позади метода считывания и метода set "реальные" методы.
отслеживание Ре назад к свойству - шаблон (возврат по сравнению со взятием 1 аргумент) поможет сузить его - но необходимо будет назвать GetGetMethod/GetSetMethod на каждом для нахождения свойства.
Вы могли , вероятно , пробуют Name
(меньше получает __/set __) - но это чувствует себя хрупким. Вот более длительная версия (нет смысла Name
):
static PropertyInfo GetProperty(MethodInfo method)
{
bool takesArg = method.GetParameters().Length == 1;
bool hasReturn = method.ReturnType != typeof(void);
if (takesArg == hasReturn) return null;
if (takesArg)
{
return method.DeclaringType.GetProperties()
.Where(prop => prop.GetSetMethod() == method).FirstOrDefault();
}
else
{
return method.DeclaringType.GetProperties()
.Where(prop => prop.GetGetMethod() == method).FirstOrDefault();
}
}
Изучите MethodBase.IsSpecialName
. Методы, которые не должны быть явно видимыми, такими как средства доступа свойства, методы подписки события и перегрузки оператора, используют этот флаг.
К моему знанию, нет способа найти PropertyInfo
, не выполняя итерации через свойства и сравнивая методы.