У меня есть симулятор продаж, написанный на C #. Я не писал это, однако в настоящее время я изменяю его для соответствия другим требованиям.
Он в основном отображает список продуктов из базы данных и имеет текстовое поле для каждого продукта, в котором вы можете ввести количество проданного товара. Проданное количество рассчитывается на основе его цены в базе данных.
Теперь все работает нормально, но есть одна небольшая проблема. При нажатии кнопки «Купить», я возвращаюсь к списку продуктов, которые верны, однако количество, введенное мною для предыдущего продукта, остается.
Я хотел бы знать, как восстановить для текстовых полей их значение по умолчанию при отправке данных в базу данных.
Я всегда думал, что способ сделать это будет в .cs коде файла
txtQuantity.Text = "";
Однако по какой-то странной причине txtQuantity не будет отображаться.
Кто-нибудь может подумать о том, что я делаю неправильно? Вот фрагмент кода из файла aspx.
<form id="form1" runat="server">
Date:
<asp:TextBox ID="txtDate" runat="server" />
Retailer:
<asp:DropDownList ID="dlStore" runat="server"
onselectedindexchanged="dlStore_SelectedIndexChanged" />
<asp:ListView ID="lbProducts" runat="server">
<LayoutTemplate>
<layouttemplate>
<table border="1" cellpadding="1" style="width:800px">
<tr style="background-color:#E5E5FE">
<th>ID</th>
<th>ProductCode</th>
<th>Product Title</th>
<th>RRP $</th>
<th>Quantity</th>
<th>Sale Price $</th>
</tr>
<tr id="itemPlaceholder" runat="server"></tr>
</table>
</layouttemplate>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td style="width: 50px;">
<%#Eval("ProductID") %>
</td>
<td>
<%#Eval("ProductCode") %>
</td>
<td>
<%#Eval("ProductTitle") %>
</td>
<td>
<%#Eval("USListPrice") %>
</td>
<td style="width: 50px;">
<asp:TextBox ID="txtQuantity" runat="server" Text="0" />
</td>
<td style="width: 50px;">
<asp:TextBox ID="txtSalePrice" runat="server" Text="0.00" />
</td>
</tr>
</ItemTemplate>
</asp:ListView>
<asp:Button ID="btnBuy" Text="Buy These Items" runat="server" OnClick="btnBuy_Click" />
<asp:Button ID="btnClear" Text="Clear Existing Sales" runat="server"
onclick="btnClear_Click" />
</form>
В коде файла много чего происходит, и я не ожидаю, что кто-нибудь пройдет через него, но способ сбора данных из txtQuantity осуществляется с помощью следующей строки кода:
Int32 quantity = Int32.Parse(((TextBox)item.FindControl("txtQuantity")).Text);
Итак, я хочу установить это текстовое поле либо пустым, либо обратно в ноль.
Любая помощь приветствуется, спасибо.