簡體   English   中英

如何通過按鈕從具有文本框值的列表框中計算所選項目到 output 它在文本框中

[英]How do I calculate selected item from list-box with text-box value to output it in textbox through button

列表框的每個值有 2 個值一個字符串披薩的名稱另一個是 int 用戶將選擇披薩的價格並通過文本框輸入金額並按計算按鈕

並將獲得總金額文本框中的價格

我試過這個: -

private void button1_Click(object sender, EventArgs e)
{

    textBox1.Text* listBox1.SelectedItem();

}

為了執行乘法 ( ),您需要在左右兩邊都有一個數值。 ( ) function 是純返回類型,因此您還需要將其分配給某些東西。

編輯:我意識到您使用的是 ListBox 為時已晚。 只需記住將所選項目值轉換為小數(或解析它)

所以,幾步。 1:獲取textBox1中的數值:

int quantity;
if(!int.TryParse(textBox1.Text, out quantity)){
  MessageBox.Show("Only numbers are allowed in Quantity", "Error");
}

這里發生了兩件事。 我們正在嘗試將字符串解析為 integer。 並非所有字符串都可以解析(即“One”),有些可以(即“1”)。 如果無法解析文本,那么我們要警告用戶。 我們在 int.TryParse 上還有一個“out”參數。 如果解析成功,則將數量的值設置為 int 值。 我們用一塊石頭殺死兩只鳥。

2:獲取所選商品的價格。 您可以巧妙地使用組合框,因為項目是“對象”,表單上的文本來自對象“ToString()”function。 您可以在 object 中存儲任何內容,但您需要進行轉換才能理解它。 現在,假設您有一個“產品”class?:

public class Product{
   private string _name;
   public decimal Price {get;}

   public Product(string name, decimal price){
      _name = name;
      Price = price;
   }
   public override string ToString(){
     return _name;
   }
}

我們現在可以用一些項目填充 combobox:

comboBox1.Items.Add(new Product("Pizza", 5.99));
comboBox1.Items.Add(new Product("Burger", 2.99));

現在我們可以使用強制轉換從 comboBox 中獲取 class:

var selectedProduct = (Product) comboBox1.SelectItem;

然后你可以做你的乘法:

var total = quantity * selectedProduct.Price;

希望對你有幫助^_^

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM