如何根据从组合框中选择的值选择ID。 [英] How to pick ID based on value selected from the combo box.

查看:70
本文介绍了如何根据从组合框中选择的值选择ID。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,



我在my.vb应用程序中有一个DataTable m_dtDelayedDeliveryDays。这个数据表我加载了我的组合框。



数据表格的值如下:

ID DelayDays

6 0

8 3
9 7

10 15

11 20

12 30



现在我的组合框包含DelayDays。根据用户选择说3我需要ID为8.

如何在vb.net中执行此操作..请帮助。



我尝试了这个,但它没有用:

Hi All,

I have a DataTable m_dtDelayedDeliveryDays in my.vb application.With this Data table i loaded my combo box .

The Data table has values like this:
ID DelayDays
6 0
8 3
9 7
10 15
11 20
12 30

Now my combo box contains DelayDays. Based on the user selection say 3 i need ID as 8.
How do i do this in vb.net..Please help.

I tried this but it didnt work:

Dim selectedDataRow As Integer = DirectCast(cmbDelayedDeliveryDays.SelectedItem, DataRowView).Row
Dim delayId As Integer = Convert.ToInt32(selectedDataRow(DeliveryDelayDaysID"))



抛出错误无法将类型''System.Int32'的对象强制转换为''System.Data.DataRowView ''。



请帮忙。







谢谢。


This is throwing an error"Unable to cast object of type ''System.Int32'' to type ''System.Data.DataRowView''."

Please help.



Thanks.

推荐答案

当您将数据表加载到组合框中时,定义DisplayMember和ValueMember

When you load the datatable into your combobox define the DisplayMember and ValueMember
ComboBox1.DataSource = myDataTable
ComboBox1.DisplayMember = "DelayDays"
ComboBox1.ValueMember = "ID"

然后在适当的comboBox事件上你可以使用(例如)

Then on the appropriate comboBox event you can use (e.g.)

Debug.Print(ComboBox1.SelectedValue.ToString()


代码示例如下

标记

< asp:dropdownlist id =ddlDaysrunat = serverxmlns:asp =#unknown>

< asp:button id =btnSavetext =Saverunat =serveronclick =btnSave_Clickxmlns:asp = #unknown>

CodeBehind



页面加载事件

Code sample like as follows
Markup
<asp:dropdownlist id="ddlDays" runat="server" xmlns:asp="#unknown">
<asp:button id="btnSave" text="Save" runat="server" onclick="btnSave_Click" xmlns:asp="#unknown">
CodeBehind

Page load event
protected void Page_Load(object sender, EventArgs e)
{
    if (!base.IsPostBack)
    {
        ddlDays.DataSource = GetDataTable();
        ddlDays.DataTextField = "DelayDays";
        ddlDays.DataValueField = "ID";
        ddlDays.DataBind();
    }        
}



保存按钮点击事件处理程序


Save button click event handler

protected void btnSave_Click(object sender, EventArgs e)
{   
    int selectedId = int.Parse(ddlDays.SelectedValue);
}



样本数据提供者方法


sample data provider method

private DataTable GetDataTable()
{
    var dt = new DataTable("DataTabl1");
    dt.Columns.Add("ID", typeof(Int32));
    dt.Columns.Add("DelayDays", typeof(Int32));

    DataRow row1 = dt.NewRow();
    row1["ID"] = 6;
    row1["DelayDays"] = 0;
    dt.Rows.Add(row1);

    row1 = dt.NewRow();
    row1["ID"] = 8;
    row1["DelayDays"] = 3;
    dt.Rows.Add(row1);

    row1 = dt.NewRow();
    row1["ID"] = 9;
    row1["DelayDays"] = 7;
    dt.Rows.Add(row1);
    return dt;
}


这篇关于如何根据从组合框中选择的值选择ID。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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