Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 16 kết quả

Đề tài: Chuyển 10000000 thành 10.000.000 vnđ trong C#?

  1. #1
    Ngày gia nhập
    05 2011
    Bài viết
    47

    Mặc định Chuyển 10000000 thành 10.000.000 vnđ trong C#?

    Trong Table mình để kiểu số là: numeric(18, 0)
    Giờ mình dùng Datalist hiện dữ liệu ra nó thành: 10000000 giờ mình muốn thành 10.000.000 vnđ thì là thế nào?

    Mình dùng lệnh SQL để lấy dữ liệu ra: SELECT [MaCM], [Tenbai], [Tomtat], [Gia], [anh], [chuthich],....

    Giờ muốn trường giá được định dang như trên mong các Pro chi giáo:
    mình đã đọc mấy cái chuyển đổi dạng String.Format.... nhưng trong lệnh này thì đặt ở đâu?

  2. #2
    Ngày gia nhập
    06 2010
    Bài viết
    17

    Visual C# Code:
    1. public void TachSo(TextBox luong)
    2.         {
    3.             string txt,txt1;
    4.             txt1=luong.Text.Replace(",","");
    5.             txt="";
    6.             int n=txt1.Length;
    7.             int dem=0;
    8.             for(int i=n-1;i>=0;i--)
    9.             {
    10.                 if (dem==2 && i !=0)
    11.                 {
    12.                     txt="," + txt1.Substring(i,1) + txt;
    13.                     dem=0;
    14.                 }
    15.                 else
    16.                 {
    17.                     txt=txt1.Substring(i,1) +txt;
    18.                     dem +=1;
    19.                 }
    20.             }
    21.             luong.Text=txt;
    22.             luong.SelectionStart=luong.Text.Length;
    23.       }

    Code này mình viết cũng đã lâu, lâu rồi mình không làm việc với C# nên mình quên mất phải giải thích thế nào Mong bạn thông cảm.
    Đã được chỉnh sửa lần cuối bởi lhduchieu : 15-09-2011 lúc 10:18 AM.

  3. #3
    Ngày gia nhập
    06 2011
    Bài viết
    277

    Của bạn đây!!

    Làm giống thế này là đc!!! hì

    Visual C# Code:
    1.   if (tb_sotienop.Text.Length >= 4)
    2.             {
    3.                 string t;
    4.                 t = String.Format("{0:#,###,###}", double.Parse(tb_sotienop.Text));
    5.                 tb_sotienop.Text = t;
    6.                 tb_sotienop.SelectionStart = tb_sotienop.Text.Length;
    7.             }
    Sống là để cho đi và ...... Nhận lại

  4. #4
    Ngày gia nhập
    04 2010
    Bài viết
    1,534

    Dùng format string thì rất giản dị:

    string tienDangString = 10000000.ToString("###,###,###,### vnd").Replace(',', '.');

    Tuy nhiên, trước khi đọc lại thì phải lọc bỏ các chỗ rườm rà đi:

    int soTien = int.Parse(tienDangString.Replace(".", "").Replace("vnd", ""));

  5. #5
    Ngày gia nhập
    05 2011
    Bài viết
    47

    Cám ơn các bạn đã đóng góp nhưng cái dữ liệu của mình để trong Datalist những cách của các bạn mình đặt vào file cs. nó đếu báo lỗi.

    Code:
    <asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1">
                <ItemTemplate>
                    tep:
                    <asp:Label ID="tt" runat="server" Text='<%# Eval("gia") %>'></asp:Label>
                    <asp:TextBox ID="t1" runat="server"></asp:TextBox>
                </ItemTemplate>
            </asp:DataList><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:stttttqConnectionString %>"
    mình đặt vào file cs. nó đếu báo lỗi.

  6. #6
    Ngày gia nhập
    08 2011
    Nơi ở
    Yên Bái- Hà Nội
    Bài viết
    961

    Mặc định Chuyển 10000000 thành 10.000.000 vnđ trong C#?

    hi. Viết luôn vào trong cái Text of file *.aspx được mà bạn. Thử làm thế xem ok ko?
    Visual C# Code:
    1. <asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1">
    2.             <ItemTemplate>
    3.                 tep:
    4.                 <asp:Label ID="tt" runat="server"
    5.                    Text='<%# Eval("gia").ToString("###,###,###,### vnd").Replace(',', '.') %>'></asp:Label>
    6.                 <asp:TextBox ID="t1" runat="server"></asp:TextBox>
    7.             </ItemTemplate>
    8.         </asp:DataList><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:stttttqConnectionString %>"

  7. #7
    Ngày gia nhập
    05 2011
    Bài viết
    47

    Mình làm theo bạn nhưng nó báo lỗi: The server tag is not well formed.

  8. #8
    Ngày gia nhập
    08 2011
    Nơi ở
    Yên Bái- Hà Nội
    Bài viết
    961

    oh. Đúng rôì. Tại nó chứa kí tự nháy đơn(') trùng với cái của Text='...'.
    +Trước hết bạn bỏ cái replace() đi. viet thế này:
    Text='<%# Eval("gia").ToString("###,###,###,### vnd")%>'
    +Tìm cách đưa cái kí tự nháy đơn(') về kí tự thường: dùng dấu(\) xem ổn ko.hihi
    Text='<%# Eval("gia").ToString("###,###,###,### vnd").Replace(\',\',\ '.\') %>'>

    thử xem ổn ko? nếu ko ổn thì post lỗi lên.

  9. #9
    Ngày gia nhập
    09 2011
    Nơi ở
    TP Hồ Chí Minh
    Bài viết
    37

    Lâu rồi không code asp.Net, hỏi thử tí, sao cái Attribute Text không dùng (") mà phải dùng (')?
    p/s: ta là gấu

  10. #10
    Ngày gia nhập
    08 2011
    Nơi ở
    Yên Bái- Hà Nội
    Bài viết
    961

    Dùng cái nào mà chẳng bị vướng bạn, vì bên trong có cả nháy kép+nháy đơn. kiểu nào cũng đều phải làm mất tác dụng kí tự đặc biệt của 1 /2 tên đó thui.hi

Các đề tài tương tự

  1. Load Image trong file word(đã chuyển thành binary trong csdl) lên trình duyệt
    Gửi bởi Mr.BiBi trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 3
    Bài viết cuối: 05-12-2013, 08:45 AM
  2. Trả lời: 0
    Bài viết cuối: 07-08-2012, 05:12 PM
  3. Trả lời: 20
    Bài viết cuối: 27-02-2012, 12:05 AM
  4. ADO.NET Từ giá trị bool trong CSDL chuyển thành tên trong DataGridViewTextColumn
    Gửi bởi tamthientai trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 28-12-2011, 10:31 PM
  5. Chuyển đổi thành hàm việc chuyển chữ Hoa trong C++
    Gửi bởi quan_pc trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 10
    Bài viết cuối: 20-06-2011, 07:15 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn