查看输入的文本框值是否作为数组的一部分存在
本文关键字:数组 是否 一部分 存在 输入 文本 | 更新日期: 2023-09-27 18:05:18
我使用的是VS 2012, Windows Forms Project, c#
我有一个名为products[]
的产品数组,我从我的项目中的XML文件中获得。用户将使用数字键盘输入产品ID(4位数字,只读文本框),然后我搜索products[]
以找到与ID匹配的价格,并将其"找零"还给用户。我如何防止用户输入无效的产品ID,或者在他们输入ID并单击"购买"后告诉他们"错误此ID不存在"之类的内容。这是我的购买按钮的代码,在用户输入他们的"钱"并为产品做出4位数的选择之后。
CoinChange
是一个来自DLL的类,它有一个叫做TotalChange
的方法,它接受两个参数来吐出变化,decimal productprice
和decimal amountDeposited
private void btnPurchase_Click(object sender, EventArgs e)
{
TextReader reader = null;
decimal productprice;
decimal amountDeposited = Convert.ToDecimal(txtDepositAmount.Text);
int productChoice = Convert.ToInt16(txtChoice.Text);
XmlSerializer serializer = new XmlSerializer(typeof(Product[]));
reader = new StreamReader("../../XML/Drinks.xml");
Product[] products = (Product[])serializer.Deserialize(reader);
for (int x = 0; x < products.Length; x++)
{
if (products[x].productID == productChoice)
{
productprice = products[x].price;
CoinChange CC = Service.TotalChange(productprice, amountDeposited);
MessageBox.Show("Refund amount:" + "'r'n" + "Nickel: " + CC.Nickel.ToString() + "'r'n" + "Dime: " +
CC.Dime.ToString() + "'r'n" + "Quarter: " + CC.Quarter.ToString());
break;
}
}
}
请不要对我大喊大叫,如果这不是格式化正确,我是新的网站,我会修复它只是让我知道什么需要修复。谢谢你!
for (int x = 0; x < products.Length; x++)
{
if (products[x].productID == productChoice)
{
productprice = products[x].price;
CoinChange CC = Service.TotalChange(productprice, amountDeposited);
MessageBox.Show("Refund amount:" + "'r'n" + "Nickel: " + CC.Nickel.ToString() + "'r'n" + "Dime: " +
CC.Dime.ToString() + "'r'n" + "Quarter: " + CC.Quarter.ToString());
return; // Found and handled the product
}
}
// If we get here none of the products matched
MessageBox.Show("Invalid product ID. Please check your catalog and try again.");