Hỏi về Label trong lập trình C# trên Visual Studio

cho mình hỏi làm sao để gán ttbmasanpham_TextChanged cho biến mahang vậy,giúp với

Ý bạn là lấy mã sản phẩm từ label?

1 Like

Chắc là sai kiểu dữ liệu.

int mahang = Convert.ToInt32( ttbmasanpham_TextChanged );

hoặc

string mahang = ttbmasanpham_TextChanged;
1 Like

ìm, lấy mã san phẩm từ label gán cho biến masanpham

để chút nữa mình thử xem thế nào…cái đó là convert dữ liệu hã

Cái TextChanged là sự kiện của label. Bạn phải viết code vào trong đó mới được
Nếu chỉ đơn giản là lấy dữ liệu từ label qua biến thì làm như thế này
int mahang = Int32.Parse(ttbgiasanpham.Text);

2 Likes

ok mình thử xem…

Nếu ttbmasanpham_TextChanged là sự kiện thì phải được return về kiểu string, dạng như vầy:

private string ttbmasanpham_TextChanged(object sender, EventArgs e)
{
    string msp = ttbmasanpham.Text;
    // xử lý chuỗi msp

    return msp;
}

Trong Visual Studio, khi bị lỗi nó sẽ hiện thông báo trong Error List (Ctrl W, E), bạn xem trong đó có nhiều thông tin về lỗi lẫn cách khắc phục.

1 Like

ok cảm ơn bạn nhiều

Cái textchanged là hàm sự kiện thì nó ở dạng void gán lm sao sang int được .
Muốn lấy thì thế này :
Kiểu đại lãn :

[code]
int mahang = int.Parse(lblmahang.Text);

[code]

Kiểu chuẩn :

int mahang =0;
if(int.TryParse(lblmahang, out mahanf)==fasle) // mã hàng nhập không đúng.
1 Like

mình mới học mình chưa hiểu lắm textchanged là sự kiện “sự kiện là sao ạ”

Sự kiện là một hàm để bắt một hành động của một đối tượng GUI. VD
private void bttthanhtoan_Click(object sender, EventArgs e) { //code here }
Là hàm thực thi sự kiện click của button bttthanhtoan. Khi bạn click vào button đó thì nó sự thực thi code trong hàm bttthanhtoan_Click

1 Like

như vậy đúng ko, chạy ko ra kết quả
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 Inhoadin
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

    private void Form1_Load(object sender, EventArgs e)
    {

    }

    private void label1_Click(object sender, EventArgs e)
    {

    }

    private void lblmasanpham_Click(object sender, EventArgs e)
    {

    }

    private void ttbmasanpham_TextChanged(object sender, EventArgs e)
    {

    }

  
    private void lbltongtien_Click(object sender, EventArgs e)
    {

    }

    public void ttbsoluong_TextChanged(object sender, EventArgs e)
    {
       
    }

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

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

    public void ttbgiasanpham_TextChanged(object sender, EventArgs e)
    {
       
    }
    private void bttthanhtoan_Click(object sender, EventArgs e)
    {
        int Mahang = Int32.Parse(ttbmasanpham.Text);
        string Tenhang = Convert.ToString(ttbtensanpham.Text);
        int Soluong = Int32.Parse(ttbsoluong.Text);
        string tennhanvien = Convert.ToString(ttbnvthanhtoan.Text);
        double Giatien = double.Parse(ttbgiasanpham.Text);
        int tongtien = Int32.Parse(ttbtongtien.Text);
        //tính tổng tiền cần thanh toán

        tongtien = Soluong * (int)Giatien;
        string chuoi = "" + tongtien;
      

    }


}

}

2…ảnh

3.lỗi

như vậy đúng ko bạn , chạy ko ra kết quả
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 Inhoadin
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

    private void Form1_Load(object sender, EventArgs e)
    {

    }

    private void label1_Click(object sender, EventArgs e)
    {

    }

    private void lblmasanpham_Click(object sender, EventArgs e)
    {

    }

    private void ttbmasanpham_TextChanged(object sender, EventArgs e)
    {

    }

  
    private void lbltongtien_Click(object sender, EventArgs e)
    {

    }

    public void ttbsoluong_TextChanged(object sender, EventArgs e)
    {
       
    }

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

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

    public void ttbgiasanpham_TextChanged(object sender, EventArgs e)
    {
       
    }
    private void bttthanhtoan_Click(object sender, EventArgs e)
    {
        int Mahang = Int32.Parse(ttbmasanpham.Text);
        string Tenhang = Convert.ToString(ttbtensanpham.Text);
        int Soluong = Int32.Parse(ttbsoluong.Text);
        string tennhanvien = Convert.ToString(ttbnvthanhtoan.Text);
        double Giatien = double.Parse(ttbgiasanpham.Text);
        int tongtien = Int32.Parse(ttbtongtien.Text);
        //tính tổng tiền cần thanh toán

        tongtien = Soluong * (int)Giatien;
        string chuoi = "" + tongtien;
      

    }


}

}

2…ảnh

3.lỗi

Mình thật sự thắc mắc form này của bạn là thanh toán hay nhập thông tin sản phẩm?

ý mình là nhập thông tin sản phẩm vào ,khi nhấn thanh toán thì ngay chỗ tổng số tiền sẽ ra kết quả tiền, thế thôi,. mình đang tập làm

Sự kiện là cách để một đối tượng thông báo ra bên ngoài một sự thay đổi, hoặc thông tin bên trong nó. Một hàm xử lý sự kiện tương ứng được gắn với sự kiện sẽ được thực thi ngay khi đối tượng ném ra sự kiện (Event).
Ví dụ TextChanged được ném ra khi text bị thay đổi.
Click được ném ra khi click vào button…
Checked được ném ra khi check hàng xong :))

1 Like

bạn xem code mình vừa bình luận đúng ko, ý định của mình là nhập thông tin sản phẩm vào ,khi nhấn thanh toán thì ngay chỗ tổng số tiền sẽ ra kết quả tiền, thế thôi,. mình đang tập làm

Theo những cái mình nói về sự kiện thì cậu suy nghĩ đơn giản hơn thôi. Khi cậu nhấn vào nút thanh toán thì sự kiện Click được nút thanh toán ném ra. Cậu chỉ cần viết trong hàm Click của nút đó. Sẽ đọc các thông tin nhập vào và tính toán.

1 Like

ùm mình viết hết trong hàm thanh toán, mà chạy lồi ,cậu xem chỗ nào sai thử

như vậy đúng ko bạn , chạy ko ra kết quả
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 Inhoadin
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

    private void Form1_Load(object sender, EventArgs e)
    {

    }

    private void label1_Click(object sender, EventArgs e)
    {

    }

    private void lblmasanpham_Click(object sender, EventArgs e)
    {

    }

    private void ttbmasanpham_TextChanged(object sender, EventArgs e)
    {

    }

  
    private void lbltongtien_Click(object sender, EventArgs e)
    {

    }

    public void ttbsoluong_TextChanged(object sender, EventArgs e)
    {
       
    }

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

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

    public void ttbgiasanpham_TextChanged(object sender, EventArgs e)
    {
       
    }
    private void bttthanhtoan_Click(object sender, EventArgs e)
    {
        int Mahang = Int32.Parse(ttbmasanpham.Text);
        string Tenhang = Convert.ToString(ttbtensanpham.Text);
        int Soluong = Int32.Parse(ttbsoluong.Text);
        string tennhanvien = Convert.ToString(ttbnvthanhtoan.Text);
        double Giatien = double.Parse(ttbgiasanpham.Text);
        int tongtien = Int32.Parse(ttbtongtien.Text);
        //tính tổng tiền cần thanh toán

        tongtien = Soluong * (int)Giatien;
        string chuoi = "" + tongtien;
      

    }


}

}

2…ảnh

3.lỗi

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