所选索引的组合框值减少已更改 [英] combo box value decrements on selected index changed

查看:81
本文介绍了所选索引的组合框值减少已更改的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

HI全部,



我正在开发Window应用程序..我有一个组合框,其值为0,3,7,20 ...我加载来自Datatable的组合框,如下面的代码;

HI All,

I am working on Window application..I have a combo box with values like 0,3,7 ,20...I load the combo box from the Datatable like the code below;

Dim m_dtDelayedDeliveryDays As New DataTable
       m_dtDelayedDeliveryDays = GetDelayedDeliveryDays()


       For Each dr As DataRow In m_dtDelayedDeliveryDays.Rows
           Me.cmbDelayedDeliveryDays.Items.Add(dr("DeliveryDelayDays"))
       Next
       cmbDelayedDeliveryDays.DataSource = m_dtDelayedDeliveryDays
       cmbDelayedDeliveryDays.DisplayMember = "DeliveryDelayDays"
       cmbDelayedDeliveryDays.ValueMember = "DeliveryDelayDaysID"
       cmbDelayedDeliveryDays.SelectedIndex = -1



这很好..当所选索引发生变化时说例如我选择20它会自动更改为0 ...这是我在选择的索引中所做的更改:


This works fine..When the selected index gets changed say for example i select 20 it automatically changes to 0...Here is wat i do in Selected index changed:

Private Sub cmbDelayedDeliveryDays_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles cmbDelayedDeliveryDays.SelectedIndexChanged
        If cmbDelayedDeliveryDays.SelectedIndex > 0 Then

            Dim selectedDataRow As DataRow = DirectCast(cmbDelayedDeliveryDays.SelectedItem, DataRowView).Row


            Dim delayId As Integer = Convert.ToInt32(selectedDataRow("DeliveryDelayDaysID"))


            UpdateMerchant()

        End If


    End Sub







请帮我解决这个问题...当我检索表单时,我会收到表单,我将数据库中的值分配给组合框,如下所示:






Please help me with this...When i retrieve the form i get the form i assign the combo box the value from the database like this:

Dim delayid As Integer = .DeliveryDelayDaysID
           Dim m_dtDelayedDeliveryDays As New DataTable
           m_dtDelayedDeliveryDays = GetDelayedDeliveryDays()
           Dim str As Integer
           For Each drow As DataRow In m_dtDelayedDeliveryDays.Rows
               If drow("DeliveryDelayDaysID").Equals(delayid) Then
                   str = drow("DeliveryDelayDays")
                   cmbDelayedDeliveryDays.Text = str
               End If

           Next





我哪里错了..请帮助。谢谢。



Where am i going wrong..Please help.Thanks.

推荐答案

您在下面的代码中将SelectedValue指定为-1,因为它正在分配默认值,即零:



You are assigning the SelectedValue as -1 in the below code, due to which it is assigning the default value, which is zero:

cmbDelayedDeliveryDays.DataSource = m_dtDelayedDeliveryDays
       cmbDelayedDeliveryDays.DisplayMember = "DeliveryDelayDays"
       cmbDelayedDeliveryDays.ValueMember = "DeliveryDelayDaysID"



cmbDelayedDeliveryDays.SelectedIndex = -1 //评论此行并再次检查。



希望这可以解决您的问题...



如果有任何疑问,请告诉我。


cmbDelayedDeliveryDays.SelectedIndex = -1 //Comment this line and check again.

Hope this solve your issue...

If any queries do let me know.


这篇关于所选索引的组合框值减少已更改的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆