【发布时间】:2021-12-29 14:22:17
【问题描述】:
我正在使用 C# 和 ASP.NET 制作一个结帐程序(因为它必须离线工作(作为备份结帐寄存器))。 我将列表放入 GridView 中,但我想让每个添加的列表添加到 GridView 中,它会自动创建一个“删除按钮”。 我试图在互联网上找到,但大多数都是与数据库相关的(删除数据库中的项目),而不仅仅是删除 GridView 中的一行。
我有什么:
public static List<KassaItem> KassaList = new List<KassaItem>();
protected void Page_Load(object sender, EventArgs e)
{
TextBox1.Focus();
}
public string Connection(string eannr)
{
// connection stuff here
}
public class KassaItem
{
public string EanNr { get; set; }
public string zoekName { get; set; }
public int Quantity { get; set; }
public double Price { get; set; }
public KassaItem(string eanNr,string zoekname, int quantity, double price)
{
EanNr = eanNr;
zoekName = zoekname;
Quantity = quantity;
Price = price;
}
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
double TotalPrice = 0;
string zoekfunctie = Connection(TextBox1.Text);
string[] zoekSplit = zoekfunctie.Split('-');
string zoekNaam = zoekSplit[1];
double Prijs = Convert.ToDouble(zoekSplit[0]);
List<KassaItem> KassaNew = new List<KassaItem>();
bool isNew = true;
if (TextBox1.Text != "")
{
foreach (var KassaItem in KassaList)
{
if (TextBox1.Text == KassaItem.EanNr)
{
KassaNew.Add(new KassaItem(KassaItem.EanNr, KassaItem.zoekName, KassaItem.Quantity + 1, KassaItem.Price + Prijs));
isNew = false;
}
else
{
KassaNew.Add(KassaItem);
}
}
if (isNew)
{
KassaNew.Add(new KassaItem(TextBox1.Text, zoekNaam, 1, Prijs));
}
KassaList = KassaNew;
GridView1.DataSource = KassaList;
GridView1.DataBind();
foreach(var item in KassaList)
{
TotalPrice += item.Price;
}
// here i want to make a button
foreach(var item in KassaList)
{
Button RemoveButton = new Button();
RemoveButton.Text = "remove product??";
RemoveButton.ID = "ButtonRemove_" + Item.EanNr;
}
}
TextBox1.Text = "";
TextBox1.Focus();
TotalItems.Text = TotalPrice.ToString();
}
我想要的基本上是: 如何制作一个“按钮”分配给该行时,创建该行以在单击该行时删除该行。
附: 如果我得到一个我可能没有看过/错过的文档的链接,我也很高兴。 提前祝大家新年快乐!
【问题讨论】:
-
The documentation 会满足您的所有需求。 GridView 是一个复杂的对象,我鼓励您花一些时间研究它。顺便说一句,使用 WebForms“因为它必须离线工作”并不是使用 WebForms 的理由。如果可行,请考虑使用更现代的 Web 框架。