如何从同一列中的值提取到不同的文本框中?

时间:2019-02-04 07:03:11

标签: c# asp.net sql-server webforms

我在将动态数据显示到文本框中时遇到困难。我处在多个文本框的情况下,我想从表中获取其列名称为“ registration_charges”和“ amount”的值。现在,“ registration_charges”列包含例如“ OPD_CHARGES”,“ DR.Charges”和“金额”列的数据,例如:-5000、1000。我想在文本框中相应地显示金额。

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">

后端代码:

<asp:Label runat="server" >OPD Ch.</asp:Label>
<asp:TextBox ID="txtopd_charges" runat="server" Width="100px"  
style="text- 
align: right;float:right;margin-right:15px;">/-</asp:TextBox>
<asp:Label runat="server" >DR Ch.</asp:Label>
<asp:TextBox ID="txtdr_charges" runat="server" Width="100px"  
style="text- 
align: right;float:right;margin-right:15px;">/-</asp:TextBox>

1 个答案:

答案 0 :(得分:1)

在查询中,您必须选择registration_chargesamount

SqlCommand cmd = new SqlCommand("SELECT amount,registration_charges  FROM 
   Mst_Charges WHERE registration_charges IN('OPD_CHARGES', 
   DR.Charges')",  con);

您可以像这样获取DataTable的数据:

txtopd_charges.Text = dt.Rows[0]["amount"].ToString();
txtdr_charges.Text =  dt.Rows[0]["registration_charges"].ToString();

已更新 您可以将数据与Repeater绑定,并在ItemTemplate内初始化您的文本框,这将重复您的数据存在于DataTable中。

aspx代码

<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
    <ItemTemplate>
        <asp:TextBox ID="txtopd_charges" Text='<%# Eval("amount") %>' runat="server"></asp:TextBox>
        <asp:TextBox ID="txtdr_charges" Text='<%# Eval("registration_charges") %>' runat="server"></asp:TextBox>
    </ItemTemplate>
</asp:Repeater>

和您的 C#

if (dt.Rows.Count > 0)
{
   Repeater1.DataSource = dt;
   Repeater1.DataBind();
}