我有一個下拉列表,它是gridview中列的列表。我需要能夠根據第一個下拉列表中列的選擇來填充另一個下拉列表。我填充第一個DropDownList這樣的:在Linq查詢中使用DropDownList selecteditem
public void ddlColumnPopulate()
{
var gvColumns = GridView1.Columns;
var viewName = ((IDataSource)EntityDataSource1).GetViewNames().OfType<string>().First();
var view = (EntityDataSourceView)((IDataSource)EntityDataSource1).GetView(viewName);
var schema = view.GetViewSchema();
var dsColumns = schema.Columns;
var dvColumnsDict = gvColumns.OfType<BoundField>().ToDictionary(a => a.DataField);
foreach (DataColumn c in dsColumns)
{
//var li = new ListItem(string.Format("{0}: {1}", c.ColumnName, c.DataType), c.DataType.ToString());
var li = new ListItem(c.ColumnName, c.DataType.ToString());
ddlColumn.Items.Add(li);
}
}
我試圖填充第二下拉列表這樣的,但它不工作。我不確定你是否可以做這樣的事情?
public void populatecolumn()
{
using (TestEntities dbContext = new TestEntities())
{
string col = ddlColumn.SelectedItem.ToString();
var a = (from b in dbContext.tbl_Batch
select col);
ddlData.DataSource = a;
ddlData.DataTextField = col;
ddlData.DataValueField = col;
DataBind();
ddlData.Items.Insert(0, new ListItem(String.Empty, String.Empty));
ddlData.SelectedIndex = 0;
}
}
我收到錯誤消息:DataBinding:'System.String'不包含名爲'intBatchID'的屬性。
我仍然收到相同的錯誤消息。 – hollyquinn
哪條線提出你的錯誤?在DataBind中? –
和a和col的內容是什麼? –