Hướng dẫn định dạng tiền tệ trong textbox C# với dấu phẩy

Để định dạng tiền tệ trong textbox với dấu phẩy cần làm theo hai bước sau:

Bước 1: Thêm thư viện:

using System.Globalization;

Bước 2: Thêm đoạn code sau vào sự kiện TextChange của textbox muốn định dạng

System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
decimal value=decimal.Parse(texbox1.Text,System.Globalization.NumberStyles.AllowThousands);
texbox1.Text = String.Format(culture, "{0:N0}", value);
texbox1.Select(texbox1.Text.Length, 0);

Bước 3: Chọn font hiển thị Arial cho textbox.

Lưu ý: không nên chọn font "Microsoft Sans Serif" vì font này không hỗ trợ dấu dấu phẩy trong định dạng tiền tệ "en-US"

Nguyễn Tuấn Khiêm

Hướng dẫn Binding Extra Report với nhiều Datasource

Hôm nay mình sẽ hướng dẫn các bạn cách sử dụng nhiều datasource trên một report.

Bước 1: Tạo DetailReport_Band bằng cách nhấp chuột phải vào Detail band và chọn như hình sau:

Bước 2: Thêm table vào Detail6 và đặt tên cho thuộc tính Name, để Binding các trường trong datasoure

Bước 3: Khởi tạo DataTable dùng để làm Datasource

using System.Drawing;
using System.Collections;
using System.ComponentModel;
using DevExpress.XtraReports.UI;
using System.Data;
using Data;
using System.Globalization;

namespace VanTaiToChau_Desktop.Report
{
    public partial class report_ChiTietKhauTru : DevExpress.XtraReports.UI.XtraReport
    {
        public report_ChiTietKhauTru()
        {
            InitializeComponent();
        }
        DataTable dt_NoCuoc_di = new TiepNhanHangHoaData().getDSNoCuoc_Di(Common.Truyendulieu.SAVE_IDTRAM, Common.Truyendulieu.ID_TramDenKhauTru, Common.Truyendulieu.NgayKhauTru);
	}
}

Bước 4: Tạo sự kiện BeforePrint cho report và thêm datasource cho DetailReport_Band

using System.Drawing;
using System.Collections;
using System.ComponentModel;
using DevExpress.XtraReports.UI;
using System.Data;
using Data;
using System.Globalization;

namespace VanTaiToChau_Desktop.Report
{
    public partial class report_ChiTietKhauTru : DevExpress.XtraReports.UI.XtraReport
    {
        public report_ChiTietKhauTru()
        {
            InitializeComponent();
        }
        DataTable dt_NoCuoc_di = new TiepNhanHangHoaData().getDSNoCuoc_Di(Common.Truyendulieu.SAVE_IDTRAM, Common.Truyendulieu.ID_TramDenKhauTru, Common.Truyendulieu.NgayKhauTru);
		
        private void report_ChiTietKhauTru_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
        {
            if (dt_NoCuoc_di.Rows.Count > 0)
            {
                DetailReport.DataSource = dt_NoCuoc_di;
                ID_TiepNhanHangHoa.DataBindings.Add("Text", dt_NoCuoc_di, "ID_TiepNhanHangHoa");
                SoTien.DataBindings.Add("Text", dt_NoCuoc_di, "TongTien", "{0:0,0}");
            }
    
        }
    }
}


Lưu ý: Để có thể Binding nhiều datasoure trên report cần tạo nhiều DetailReport_Band và thực hiện tương tự các bước trên

Tác giả: Nguyễn Tuấn Khiêm