【问题标题】:ComboBox's Selected Value Changed On Lost Focus in VB.NETComboBox 的选定值在 VB.NET 中因失去焦点而改变
【发布时间】:2009-10-12 17:28:31
【问题描述】:

我有一个带有 DataGridViewComboBoxColumn(colLocation) 的 datagridview(dgv)

colLocation.AutoComplete = False
colLocation.HeaderText = "Stored to"
colLocation.DataSource = DB.getLocation()
colLocation.DisplayMember = "description"
colLocation.ValueMember = "id"

我将 colLocation 添加到 dgv。

“描述”包含 Unicode 字符。我可以正确查看组合框并选择项目。

问题是comboBox失去焦点后,值变为comboBox的第一项。

有什么建议吗?

更新:

我发现当 DisplayMember 是英文字符时,ComboBox 不会更改数据。

仅当 DisplayMember 为 Unicode 字符 时才更改。关于如何解决这个问题的任何想法? – tunwn 0 秒前

【问题讨论】:

    标签: vb.net visual-studio-2005 combobox


    【解决方案1】:

    你的 .aspx 页面应该是这样的:

    <asp:DropDownList Width="90px" ID="ddlExpenseTypes" OnSelectedIndexChanged="ddlExpenseTypes_SelectedIndexChanged"  DataSource='<%# GetExpenseTypes() %>' SelectedValue='<%# Bind("ExpenseReasonID") %>' DataTextField="ExpenseReasonID" DataValueField="ExpenseReasonID" AutoPostBack="true"  runat="server" ></asp:DropDownList>
    

    也就是说,您需要对索引进行功能调用。一个用于填充下拉列表(DataSource)的函数调用和一个用于设置下拉列表的 SelectedValue 的函数调用。

    【讨论】:

      【解决方案2】:

      这是 DataGridView 数据绑定的吗?您尚未为 DataPropertyName 指定值,因此 colLocation.ValueMember 的 ID 选择没有要绑定的内容。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-09-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多