我在一个aspx页面上加载了一个文本框,其ID以“txt”为前缀,ID的其余部分在某个对象中具有相同名称的对应属性。我希望能够通过这些字符串属性进行枚举,并在发现具有相同名称(删除前缀)的文本框的位置进行更新。有任何想法吗?我知道通过使用Dictionary
我可以解决这个问题,但它并不理想。使用枚举更新对象的字符串属性
2
A
回答
4
你可以做,使用反射:
MyObject data = new MyObject();
foreach (var pi in typeof(MyObject).GetProperties().Where(i =>
i.PropertyType.Equals(typeof(string)))
{
var control = FindControl("txt" + pi.Name) as ITextControl;
if (control != null)
pi.SetValue(data, control.Text, null);
}
0
只是找到网页上的所有文本框控件,然后填写使用反射coresponding性能。
1
您可以用控制工作:
foreach (Control control in divXYZ.Controls)
if (control is TextBox)
((TextBox)control).Text = "whatever";
的FindControl是,你可以在你的解决方案中使用的另一种方法:
Control myControl = FindControl("txtYourID");
相关问题
- 1. 在C中枚举对象的属性(字符串)#
- 2. TestComplete对象 - 枚举属性
- 3. 如何更新对象属性的枚举?
- 4. 枚举如何返回枚举对象中枚举的字符串内容
- 5. 如何枚举JavaScript对象的属性?
- 6. 列表对象属性的枚举器
- 7. 枚举PowerShell对象的属性抛出
- 8. 使用枚举从wicket属性文件中选择字符串
- 9. JavaScript枚举对象 - 字符串或数字更快?
- 10. Android的 - 从网页使用字符串对象枚举
- 11. 使用以g枚举值:选择当枚举是选择对象的属性
- 12. 枚举通过对象属性
- 13. 字符串枚举
- 14. 使用DocumentTraversal枚举属性
- 15. NSStringEncoding - 枚举到字符串枚举
- 16. 属于枚举对象
- 17. 使用Description属性修饰EF对象模型的枚举?
- 18. 你可以有一个字符串属性的枚举?
- 19. 序列化具有Collection属性的枚举到JSON字符串
- 20. 使用枚举代替字符串
- 21. 如字符串使用枚举点网
- 22. 使用字符串值枚举?
- 23. 枚举使用空对象
- 24. 如何使用标志枚举属性展平对象集合?
- 25. 使用私有对象访问枚举属性
- 26. 使用reduce来将源对象的枚举属性扩展到目标对象
- 27. Objective-C的枚举对象的字符串
- 28. MySQL枚举。使用字符串或数字更好吗
- 29. 如何使JS对象的属性不可枚举?
- 30. 多个枚举字符串
这似乎是一个困难的设计处理。它是否可以改变?每当你设计出唯一的解决方案似乎是“使用反思”的东西时,你必须问自己,如果你确信你不能更好地设计它。 – Servy
如果您觉得某个答案对您有帮助,那么您应该通过点击旁边的复选框来选中它并/或将其标记为答案,而不要将其编辑为您的问题。 – Servy
我不得不等待点击它被锁定的复选框。感谢大家。 – Roooss