Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将字典(在列表中)绑定到gridview中的下拉列表_C#_Asp.net - Fatal编程技术网

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") %>'