2012-08-24 24 views
0

有没有办法绑定到ASP.NET ListControl 没有指定DataTextFieldDataValueField属性?也许有些类允许ListControl推断哪些属性是文本和哪个值?绑定到ListControl而不指定DataTextField和DataValueField?

每次指定这些属性都会导致过去的错字。我认为如果每次只能绑定到相同对象类型的集合并完全忽略字段属性,将会有所帮助。

回答

0

如果您确实需要这样的控件,您可以将ListBox类扩展为默认值。

在分配的数据类型的DataSourceGetProperties上使用反射。 假设你喜欢默认值;说第一个属性为关键(DataValueField),最后为值(DataTextField)。

0

不,没有办法让它自动“推断”它。

想象一下,你绑定到一个集合Person。 Person类可能有Id, Name, Address, City, State, Zip, Email,依此类推。该ListBox类无法读取程序员的主意,决定,他希望真正使用IdNameValueText分别因为在许多情况下有效,你可能真的需要显示PhoneId代替。

如果您至少一次运行页面如果您尝试绑定到不存在的属性,您将立即收到错误,因此这对任何人都不是问题。

相关问题