DropDownList中,越来越DataValueField在C#中返回 [英] DropDownList, getting DataValueField returned in C#

查看:294
本文介绍了DropDownList中,越来越DataValueField在C#中返回的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个下拉列表,从数据库中提取数据,以显示它的一些选项:

 < ASP:DropDownList的ID =DropDownList3=服务器的DataSourceID =SqlDataSource1
        DataTextField =名称DataValueField =PK_TaskAppendDataBoundItems =真的CssClass =DROPDOWNLIST>
        < ASP:列表项选择=真>常规支持< / ASP:ListItem的>
        < ASP:ListItem的>休养,LT; / ASP:ListItem的>
        < ASP:ListItem的>病假< / ASP:ListItem的>
        < ASP:ListItem的>别的东西< / ASP:ListItem的>
    < / ASP:DropDownList的>
    < ASP:SqlDataSource的ID =SqlDataSource1=服务器的ConnectionString =<%$的ConnectionStrings:ApplicationServices%>中
        的SelectCommand =SELECT [PK_Task],[名] FROM [任务] WHERE([PointPerson] LIKE'%'+ @PointPerson +'%')和[状态] NOT LIKE'完成'>
        < SelectParameters>
            < ASP:QueryStringParameter NAME =PointPerson类型=字符串/>
        < / SelectParameters>
    < / ASP:SqlDataSource的>

正如你所看到的,我只显示[名]列:

  DataTextField =姓名

但我也越来越主键SELECT [PK_Task],[名] FROM:

  DataValueField =PK_Task

我如何可以访问基于用户选择该主键。如果用户从下拉菜单中,我可以用什么C#来获得相应的主键退回来选择特定的名称这样我就可以把它保存在一个变量?

我已经得到的最接近的是这一点,但它的作用是返回字符串PK_Task

 字符串TASKID = DropDownList3.DataValueField;


解决方案

您可以使用的SelectedValue 属性:

  //设置
DropDownList3.SelectedValue =1;// 读书
字符串值= DropDownList3.SelectedValue;

I have a drop down list that pulls data from a database to show some of its options:

    <asp:DropDownList ID="DropDownList3" runat="server" DataSourceID="SqlDataSource1"
        DataTextField="Name" DataValueField="PK_Task" AppendDataBoundItems="true" CssClass="dropDownList">
        <asp:ListItem Selected="True">General Support</asp:ListItem>
        <asp:ListItem>Vacation</asp:ListItem>
        <asp:ListItem>Sick Leave</asp:ListItem>
        <asp:ListItem>Something Else</asp:ListItem>
    </asp:DropDownList>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ApplicationServices %>"
        SelectCommand="SELECT [PK_Task], [Name] FROM [Task] WHERE ([PointPerson] LIKE '%' + @PointPerson + '%') AND [Status] NOT LIKE 'Done'">
        <SelectParameters>
            <asp:QueryStringParameter Name="PointPerson" Type="String" />
        </SelectParameters>
    </asp:SqlDataSource>

As you can see, I only display the [Name] column:

DataTextField="Name" 

But I am also getting the primary key SELECT [PK_Task], [Name] FROM:

DataValueField="PK_Task"

How do I get access to this primary key based on user selection. If a user selects a specific 'name' from the drop down menu, what C# can I use to get the corresponding primary key returned to me so I can save it in a variable?

The closest I have gotten is this, but all it does is return the string "PK_Task":

String taskID = DropDownList3.DataValueField;

解决方案

You can use the SelectedValue property:

// to set
DropDownList3.SelectedValue = "1";

// to read
string value = DropDownList3.SelectedValue;

这篇关于DropDownList中,越来越DataValueField在C#中返回的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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