Bài tập tính tiền trong winform

Chào mọi người. E đang mày mò học trước một chút về winform tại kỳ tới sẽ có môn này.
Trong lúc làm bài tập thì có ý thứ 2 của bài này e không có hướng đi. mong mọi người chỉ giáo.
ttd
code

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Tinhtiendien
{
    public partial class Tinhtiendien : Form
    {
        public Tinhtiendien()
        {
            InitializeComponent();
            n1.Text = "0";
            n2.Text = "0";
        }
 private void Tinhtiendien_Load(object sender, EventArgs e)
        {
            if (txtTen.Text == "")
            {
                SetControls(true);
            }
            else
            {
                SetControls(false);
            }

        private void SetControls(bool edit)
        {
            ckbCaovoi.Enabled = !edit;
            ckbTaytrang.Enabled = !edit;
            n1.Enabled = !edit;
            n2.Enabled = !edit;
        }


        private void btnTinhtien_Click(object sender, EventArgs e)
        {
            
            int a, b;
            if(ckbCaovoi.Checked == true)
            {
                a = 100000;
            }
            else
            {
                a = 0;
            }

            if(ckbTaytrang.Checked == true)
            {
                b = 1500000;
            }
            else
            {
                b = 0;
            }

            decimal kq = a + b + (n1.Value * 150000) + (n2.Value * 200000);

            txtTong.Text = kq.ToString();
        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            txtTen.Text = "";
            ckbCaovoi.Checked = false;
            ckbTaytrang.Checked = false;
            n1.Text = "0";
            n2.Text = "0";
            txtTong.Text = "";
            
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Thoát à má!", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                Close();
        }

        private void txtTen_TextChanged(object sender, EventArgs e)
        {
            
        }
        }
    }
}

Giờ mới biết, đi nha sĩ sẽ bị tính tiền điện chứ không phải tiền công và thiết bị nha khoa. Giá điện mắc ra phết đấy.

Bạn làm xem ra ổn rồi. Ý thứ 2 thì bạn bắt sự kiện văn bản thay đổi TextChanged để gọi đến SetControl là xong. Kiểm tra dữ liệu có != "" hay không thôi.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?