ASP.NET数据绑定将网格作为选择列表

时间:2011-07-26 14:47:32

标签: asp.net data-binding gridview datasource

上下文 我有一个Query,它返回一个可用的列表[选项]。我有一个有[值]列表的实体。我想给用户一个带有[选项]的网格,并且根据检查/选择的[选项],我希望将那些[选项]的[值]分配给[实体]的[值] ]

这是一个相当标准的请求,但我的问题是:是否有可能以声明方式进行此类数据绑定?也就是说,我可以仅使用数据源控件和绑定表达式来进行数据绑定吗?如何定义绑定表达式/数据源,允许将值列表绑定到绑定到不同列表的网格中的选定项值,而不使用事件处理程序并手动提取值?

1 个答案:

答案 0 :(得分:1)

你可以外部加入两个查询,以便得到类似的东西:

select c.id, c.item, decode(s.id,null,'N','Y') selected
  from color c, selections s
 where c.id=s.id (+)  

请原谅Oracle语法,OJ&解码()但是你需要。 :)

ID    Item     Selected
--    -----    --------
1     Blue     N
2     Red      Y
3     Green    Y

然后,将selected属性数据绑定到新的selected列。

<强>更新

sSQL = "select c.id, c.name, case c.id "
for each e as entity in entitycollection
  sSQL &= "when " & e.id & " then 'Y' "
next
sSQL &= " else 'N' end selected "
sSQL &= "from color"

当然,你是从StringBuilder做的,而不是这些连接,但你明白了。 :)

相关问题