Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.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
Vb.net 下拉列表值与文本_Vb.net_Visual Studio 2010 - Fatal编程技术网

Vb.net 下拉列表值与文本

Vb.net 下拉列表值与文本,vb.net,visual-studio-2010,Vb.net,Visual Studio 2010,我有一个小问题,关于下拉列表。此DDL由页面加载中的项目填充,如下所示: Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load Response.Cache.SetCacheability(HttpCacheability.NoCache) If Page.IsPostBack = False Then ' Fill Activity

我有一个小问题,关于下拉列表。此DDL由页面加载中的项目填充,如下所示:

Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load

    Response.Cache.SetCacheability(HttpCacheability.NoCache)

    If Page.IsPostBack = False Then

                ' Fill Activity DDL
                Dim ActivitiesAdapter As New ActivitiesTableAdapters.ActivitiesTableAdapter
                Dim GetActivities As Activities.ActivitiesDataTable = ActivitiesAdapter.GetDataByOnPlantAndOrderType(OrderType, Plant)

                If GetActivities.Rows.Count > 0 Then
                    DDL_Activity_Name.Items.Clear()

                    Dim ActivityList As New List(Of ListItem)
                    ActivityList.Add(New ListItem("Please select ..."))

                    For b = 0 To GetActivities.Rows.Count - 1
                        Dim ActivityRow As Activities.ActivitiesRow = GetActivities(b)
                        Dim ActivityName As String = Nothing
                        Dim ActivityID As Integer = Nothing
                        If ActivityRow.IsNull("ActivityName") = False Then
                            ActivityName = ActivityRow.ActivityName
                        End If
                        If ActivityRow.IsNull("ActivityID") = False Then
                            ActivityID = ActivityRow.ActivityID
                        End If
                        ' First goes the Name then the ID
                        ActivityList.Add(New ListItem(ActivityName, ActivityID))
                    Next

                    DDL_Activity_Name.DataSource = ActivityList
                    DDL_Activity_Name.DataBind()

                End If

    End If
End Sub
加载页面后,用户必须从此DDL中选择活动。根据选定的活动,我填写另一个下拉列表。这里有一个问题:我需要ActivityID(所选项目的value属性)。因此,我创建了一个SelectedIndex事件:

 Protected Sub DDL_Activity_Name_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DDL_Activity_Name.SelectedIndexChanged

    ' At load page I added for every item a text property (ActivityName), and a value property (ActivityID)
    Dim SelectedActivityID As String = Nothing
    SelectedActivityID = DDL_Activity_Name.SelectedItem.Value

    Dim SelectedActivityName As String = Nothing
    SelectedActivityName = DDL_Activity_Name.SelectedItem.Text

End sub
我的问题是SelectedItem.Value和SelecteItem.Text都返回相同的值。
我在页面加载中检查了代码,DDL_Activity_Name中的所有列表项都填充了正确的信息。有人能给我指出正确的方向吗?

关于DDL\u活动\u Name set DataTextField=“Text”和DataValueField=“Value”

DDL_Activity_Name必须知道存储文本和值的字段是什么