C# 将字典(在列表中)绑定到gridview中的下拉列表
我正在尝试填充列表中建立的字典的下拉列表,例如,列表是从事件类建立的(在本例中,它已被稍微缩减):C# 将字典(在列表中)绑定到gridview中的下拉列表,c#,asp.net,C#,Asp.net,我正在尝试填充列表中建立的字典的下拉列表,例如,列表是从事件类建立的(在本例中,它已被稍微缩减): 公共类事件 { 公共活动() { StartDate=新字典(); } [DataMember(Name=“eventId”)] 公共Guid事件ID{get;set;} [DataMember(Name=“eventName”)] 公共字符串EventName{get;set;} [DataMember(Name=“startDate”)] 公共字典起始日期{get;set;} } 然后是实际
公共类事件
{
公共活动()
{
StartDate=新字典();
}
[DataMember(Name=“eventId”)]
公共Guid事件ID{get;set;}
[DataMember(Name=“eventName”)]
公共字符串EventName{get;set;}
[DataMember(Name=“startDate”)]
公共字典起始日期{get;set;}
}
然后是实际的数据绑定:
protected void submitSearch_Click(object sender, EventArgs e)
{
if (IsValid)
{
IEnumerable<Events> events = EventProvider.FindEvents(eventName.Text);
eventSearchResults.DataSource = events;
eventSearchResults.DataBind();
}
}
protectedvoid submitSearch\u单击(对象发送者,事件参数e)
{
如果(有效)
{
IEnumerable events=EventProvider.FindEvents(eventName.Text);
eventSearchResults.DataSource=事件;
eventSearchResults.DataBind();
}
}
在这一页中,我有:
<asp:TemplateField HeaderText="Start date">
<ItemTemplate>
<p>
<asp:Label ID="lblStartDate" Text="Start month/year" runat="server" /><br />
<asp:DropdownList ID="ddlStartDate" DataSource='<%# Eval("startDate") %>' runat="server" />
</p>
</ItemTemplate>
但是键和值都被添加到下拉列表中的值字段中。我哪里做错了?任何例子都将不胜感激。我想你能帮忙吗?基本上你必须定义如下的东西
DataValueField="listID" DataTextField="listName" SelectedValue='<%#Bind("listID") %>'
DataValueField=“listID”DataTextField=“listName”SelectedValue=“”
我想这只是一个不知道如何从列表中的字典(我真的无法摆脱)中实现的例子。你几乎需要写作:但那当然行不通。
DataValueField="listID" DataTextField="listName" SelectedValue='<%#Bind("listID") %>'