带有实体框架的ListBox

时间:2011-06-13 14:30:04

标签: .net asp.net entity-framework listbox

我是在我的页面加载事件中将IQueryable供应商集合绑定到列表框,如下所示...

        SupplierRepository sr = SupplierRepository.GetInstance();
        lbSuppliers.DataSource = sr.FindAll();
        lbSuppliers.DataTextField = "SupplierName";
        lbSuppliers.DataValueField = "SupplierID";
        lbSuppliers.DataBind();

但出于某种原因,当我尝试从列表框中获取selectedvalue时,它返回null,即使我可以在运行时看到html源视图中的值。

lbSuppliers.SelectedValue.ToString();

似乎是一个非常基本的问题,但我被卡住了。这是因为我使用EF集合作为数据源吗?

1 个答案:

答案 0 :(得分:3)

你是否每个PageLoad都有约束力?如果是,那么SelectedItem将会消失。

尝试在If (!IsPostBack)块中包装DataBinding代码。