container.dataitem咋用?手把手教你快速上手!

吉云

今儿个,咱来聊聊我在捣鼓代码时遇到的一个小玩意——。这东西,一开始我还真有点懵,不知道咋用,后来经过一番折腾,总算是摸清门道。现在我就把我的实践过程跟大家伙儿分享分享。

话说那天,我正在做一个小项目,需要把一些数据展示到页面上。我用的是一个叫 Repeater 的控件,这控件就像一个循环播放器,能把数据一条一条地展示出来。可问题来,我咋才能在 Repeater 里面拿到每一条数据?

我开始在网上搜搜,发现好多人都提到 。这玩意儿看着挺神秘,但大家都说它能解决我的问题。于是我就开始琢磨着怎么用它。

container.dataitem咋用?手把手教你快速上手!

我先是试着直接在 Repeater 的 ItemTemplate 里面写 <%# * %>。你猜怎么着?还真能显示出数据!不过显示出来的是一串乱七八糟的字符,根本看不懂是

这可咋办?我又回去翻翻那些资料,发现原来 只是一个“容器”,它里面装的才是真正的数据。要想拿到里面的数据,还得再“开箱”才行。

我又看到有人说,如果数据是放在 Hashtable 里面的,可以用 <%# ((DictionaryEntry)*).Key %> 或者 <%# ((DictionaryEntry)*).Value %> 来取数据。我心想这下应该没问题?

我赶紧把代码改改,满怀期待地运行一下。结果……还是不行!这回倒是不显示乱码,但啥也显示不出来。

我这暴脾气,差点就想把电脑给砸。但我还是忍住,毕竟电脑是无辜的。我又仔细看看代码,发现我的数据根本就不是放在 Hashtable 里面的,而是一个自定义的对象。

这下我明白,原来 里面装的是得看你绑定的数据源是如果数据源是一个对象,那 里面装的就是这个对象;如果数据源是一个 Hashtable,那 里面装的就是一个 DictionaryEntry 对象。

container.dataitem咋用?手把手教你快速上手!

想明白这一点后,我立马修改代码。因为我的数据源是一个自定义对象,所以我直接把 <%# * %> 改成 <%# ((MyDataType)*).MyProperty %>。这里的 MyDataType 是我的自定义数据类型,MyProperty 是我要显示的属性。

这回终于成功!页面上正确地显示出我要的数据。我长舒一口气,感觉自己又攻克一个难题。

通过这回实践,我算是彻底搞明白 这玩意儿。它就像一个“万能盒子”,里面装的是取决于你给它喂要想拿到里面的东西,就得先搞清楚盒子里装的是然后再用正确的方法去取。

3

  • 是数据绑定控件中,用来获取当前绑定数据项的。
  • container.dataitem咋用?手把手教你快速上手!

  • 它本身只是一个“容器”,具体装什么类型的数据,取决于绑定的数据源。
  • 如果是绑定到 Hashtable,可以通过 ((DictionaryEntry)*).Key.Value 来获取键或值。
  • 如果是绑定到自定义对象,需要先把 强制转换成对应的类型,再访问对象的属性。

希望我的这回分享能帮助到大家,少走一些弯路。以后再遇到类似的问题,咱也能轻松应对!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]