我怎样才能从同一列到不同的文本框中获取值?

问题描述 投票:-1回答:1

我有在显示动态数据转换成文本框困难。我在一个情况下,我有多个文本框,我想从表,其中列名是“registration_charges”和“量”取值。现在列registration_charges'包含数据例如,‘OPD_CHARGES’,‘DR.Charges’和‘金额’一栏有数据e.g,: - 5000,1000我要相应地显示在文本框中输入量。

<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>

后端代码:

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

SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
   txtopd_charges.Text = ???
   txtdr_charges.Text =  ???         

}
else
{

}
}
catch (Exception ex)
{
}
}    
c# asp.net sql-server webforms
1个回答
1
投票

在您的查询,您必须用registration_charges一起选择amount

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

你可以获取你的数据表是这样的数据:

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

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

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();
}
© www.soinside.com 2019 - 2024. All rights reserved.