2016-11-15 116 views
1

我需要我的總計爲貨幣格式。我的代碼不會讓我在消息框中輸出長時間的刺痛。下面是我想輸出到消息框中的內容。我怎樣才能將我的彙總格式化爲貨幣。消息框格式

 MessageBox.Show(cmboCrust.GetItemText(cmboCrust.SelectedItem) + " - " + cmboSize.GetItemText(cmboSize.SelectedItem) 
        + "\nSauce: " + cmboSauce.GetItemText(cmboSauce.SelectedItem) + 
        "\nToppings ($1.50 each): " + topings + 
        "\n\nPizza total: {0:C}" + pizzaTotal + 
        "\n\nDrink selection: " + 
        "\n\t" + sodaTotal + " soda(s)" + 
        "\n\t{0:C}" + waterTotal + " water(s)" + 
        "\nDrink Total: {0:C}" + drinksTotal + 
        "\n\nSpecialty Items: " + specialtyMessage + 
        "\nAmount Due: {0:C}" + billTotal + 
        "\n\n Deliver to: " + txtBxName.Text + ", " + txtBxAddress.Text 
        , "D & G Pizza Express Order"); 


     string output = string.Format(cmboCrust.GetItemText(cmboCrust.SelectedItem), " - ", cmboSize.GetItemText(cmboSize.SelectedItem), 
        "\nSauce: ", cmboSauce.GetItemText(cmboSauce.SelectedItem), 
        "\nToppings ($1.50 each): ", topings, 
        "\n\nPizza total: {0:C}", pizzaTotal, 
        "\n\nDrink selection: ", 
        "\n\t", sodaTotal, " soda(s)", 
        "\n\t{0:C}", waterTotal, " water(s)", 
        "\nDrink Total: {0:C}", drinksTotal, 
        "\n\nSpecialty Items: ", specialtyMessage, 
        "\nAmount Due: {0:C}", billTotal, 
        "\n\n Deliver to: ", txtBxName.Text, ", ", txtBxAddress.Text); 
+1

如何使用String.Format方法? https://msdn.microsoft.com/en-us/library/system.string.format(v=vs.110).aspx – petryuno1

+0

當我試圖我只有1行 –

+0

你是什麼嘗試完全? – Kinetic

回答

0

以下示例顯示具有兩個小數點的貨幣符號。

billTotal.ToString("C"); 
+0

這就是我需要的,謝謝!!!! –

1

嗯,你能做到這樣..

  MessageBox.Show(
      String.Format(
       "\r\nSauce: {0} \r\nToppings ($1.50 each): {1} \r\nPizza total: {2:C} \r\nDrinkSection", 1, 2, 3)); 

你的想法..只是取代1,2,3與變量

編輯。 String.Format增加了可讀性。

0
billTotal.ToString("C", CultureInfo.CurrentCulture); 
billTotal.ToString("C", new CultureInfo("en-US"); 

您可以根據當前文化或所需文化使用重載ToString()方法進行格式化。