这是我在StackOverflow上的第一篇文章,请友好:D!C#:更新小计文本框瞬间给出4个组合框选择
我正在开发一个餐厅账单计算器。由于四个组合框的用户输入:饮料,开胃菜,主菜甜品&,我有代码计算分类汇总,税和总。对于每个组合框,我都有一个与每个项目相关的预定义项目和值的列表。我已经能够成功地编码了。当用户选择他们的项目时,我有我的小计,提示0总文本框自动更新。小计= bevPrice + appPrice + mainPrice + dessPrice。税额=小计* .1M。总计=小计+税。
我的问题:说一个用户输入他们对每个类别(饮料,应用程序,主要,甜点)的选择。然后,假设用户返回饮料(combobox1)并决定将其从一个选项更改为另一个选项。即使选择了一个选项,我的代码也会将其他选择清零。同样,假设用户输入了全部四个选项,然后返回更改其主菜单(combobox3),我的代码保存为combobox1 & 2(饮料&开胃菜),在新选主菜单中添加,但是删除了combobox4(甜点)。
我知道这个问题即将出现,因为selectionindexchanged事件处理程序。如果combobox2的选择被改变,那么它会计算combobox 1 & 2,但在combobox3 & 4中没有发生变化,因此它将其恢复为0值。对?
我确定答案很明显,但我是一个新手。谢谢!
不管怎么说,这里是我的代码预览(对不起,我太冗长):
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
Menu bevSelect = comboBox1.SelectedItem as Menu;
textBox3.Text = Convert.ToString(bevSelect.bevPrice);
}
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
{
Menu appSelect = comboBox2.SelectedItem as Menu;
Menu bevSelect = comboBox1.SelectedItem as Menu;
textBox3.Text = Convert.ToString(bevSelect.bevPrice + appSelect.appPrice);
}
private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
{
Menu mainSelect = comboBox3.SelectedItem as Menu;
Menu appSelect = comboBox2.SelectedItem as Menu;
Menu bevSelect = comboBox1.SelectedItem as Menu;
textBox3.Text = Convert.ToString(bevSelect.bevPrice + appSelect.appPrice + mainSelect.mainPrice);
}
private void comboBox4_SelectedIndexChanged(object sender, EventArgs e)
{
Menu dessSelect = comboBox4.SelectedItem as Menu;
Menu mainSelect = comboBox3.SelectedItem as Menu;
Menu appSelect = comboBox2.SelectedItem as Menu;
Menu bevSelect = comboBox1.SelectedItem as Menu;
textBox3.Text = Convert.ToString(bevSelect.bevPrice + appSelect.appPrice + mainSelect.mainPrice + dessSelect.dessPrice);
而这里的a video!
只要检查每个组合框,每当它们中的任何一个被更改时。 –
我不确定这里的问题是什么。看来你要求**我们向你解释**你写的代码**。那是对的吗? –
@KenWhite对不起,我想知道为什么它不按顺序工作以及如何解决问题,但我提出了一个解决方案。谢谢! – Amburger