在 DetailsView 里 在 两个字段的 编辑模版 里 使用 两个DropDownList ,一个省,一个城市,城市DropDownList根据 省 来 联动.
选择省时 出现 "Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用" 的错误 .
之后,把这两个DropDownList 放到一个编辑模版中,数据源控件最好也放在编辑模版中. 问题解决.
还有一种方法,就是,在DropDownList 的SelectedIndexChanged 委托事件中,根据
DropDownList Dlist = (DropDownList)sender; string sel = Dlist.SelectedValue;
selectdeValue 来从数据库中返回 一个 DataView 填冲 另一个 DropDownList .
还有一个问题就是,编辑模版里,这两个DropDownList ,分别绑定 省份id,城市id. 编辑时,选择其他省份,导致,城市DropDownList变动, 抱有一个无效 SelectedValue,因为它不在项目列表中。
参数名: value 的错误. 应为城市根据省份联动,而城市的DropDownList就不会包含它绑定的城市id. 后用 dataview 填冲listitem 城市DropDownList ,不会抱错. 具体原因不清楚,继续查找中