2017-10-17 18 views
-9

Visual Studioで架空のペットクリニックのフォームをC#で開発しようとしていて、チェックボックスとラベルで構成されています。チェックボックスは診療所が実施するサービスを表し、チェックされると、他のボックスが価格に追加されることが確認され、チェックされていないときは価格から取り除かれるたびに、サービスの価格がラベルに表示されるはずです。私は、例えばラベルC#でラベルに数値を表示して追加するにはどうすればいいですか?

に表示する値を持つように私は、チェックボックスを取得する方法に引っかかっています:予防接種のチェックボックス(chkVaccinationsは)私は、チェックボックスを取得するにはどうすればよい35ドル

の費用がかかることになっています値が35で、ラベル値にゼロが追加されている場合はチェックします。

private void chkVaccinations_CheckedChanged(object sender, EventArgs e) { 
    if (chkVaccinations.Checked) 
    { 

    } 
    else 
    { 

    } 


    private void lblTotalprice_Click(object sender, EventArgs e) 
    { 

    } 
+0

コメントで最新のリクエストに答えを適応させるように変更しましたか?このWinFormsですか? WPF? UWP? ASP? – Equalsk

+0

これはVisual StudioでC# –

+1

を使用しています.Visual StudioとC#は上記のすべてのプロジェクトタイプを作成でき、それらはすべて異なります。 { 場合(chkVaccinations.Checked) } – Equalsk

答えて

1

TBHあなたの質問は、情報の多くはあなたを助けることができるように欠けているが、ここでは、これは分離コードであると仮定すると、あなたの例を、以下の溶液のアイデアです。完全なMVVMソリューションが必要な場合は、その答えを更新できます。

EDIT:メイドいくつかは誰もが知っている

private double TotalPrice { get; set; } 

private void ComputeTotalPrice(double increment) 
{ 
    TotalPrice += increment; 
} 

private void chkVaccinations_CheckedChanged(object sender, EventArgs e) 
{ 
    if (chkVaccinations.Checked) 
    { 
     ComputeTotalPrice(priceAssociatedWithThisCheckBox); 
    } 
    else 
    { 
     ComputeTotalPrice(-priceAssociatedWithThisCheckBox); 
    } 
    UpdateLabel(); 
} 

private void UpdateLabel() 
{ 
    If you want to show $ with 2 decimals 
    string formattedPrice = string.Format("{0:0.00}", TotalPrice).Replace(".00",""); 
    lblTotalprice.Text= $"{formattedPrice}$"; 
} 
+0

私はこのコードに変更しましたが、 "private int ComputeTotalPrice(int increment)"の "ComputeTotalPrice"には、 "lblTotalprice.Content = TotalPrice.ToString();"の "content"だから私はちょうどそれらを修正する方法を考えていた –

+0

私は私の答えで、タイプミスを修正しました、ComputeTotalPriceはタイプがVoidであることを意味しました。 – Picnic8

+0

ありがとうございました!今では、ラベルにドルを表示するには、どこかに "(c)"を追加しますか? 「UpdateLabel」セクションにありますか? –

関連する問題