44 Stimmen

Begrenzung auf 2 Dezimalstellen in TextBoxFor

Der nachstehende Code funktioniert gut, aber in der Textbox hat der Dezimalwert das Format "0,0000". (, ist das Dezimaltrennzeichen). Ich möchte nur 2 Dezimalstellen haben. Wie kann ich dies tun?

Danke,

//Database model used with NHibernate
public class Bank
{
    public virtual int Id { get; set; }
    public virtual string FirstName { get; set; }
    public virtual string LastName{ get; set; }
    public virtual decimal Amount { get; set; }
}

//MVC Model
public class MyModel
{
    public Bank Bank { get; set; }  
}

//View
@Html.TextBoxFor(m => m.Bank.Amount, new { id = "tbAmount"}) 

Aktualisierung 1

Im Debugger sehe ich keine Dezimalstellen, wenn ich Schritt für Schritt in der Ansicht (o @HTML.Textbofor) vorgehe, hat der Wert keine Dezimalstellen, aber wenn die Seite angezeigt wird, gibt es 4 Dezimalstellen

//Database model used with NHibernate
public class Bank
{
    public virtual int Id { get; set; }
    public virtual string FirstName { get; set; }
    public virtual string LastName{ get; set; }
    public virtual decimal Amount { get; set; }
}

//Class for view
public class ViewBank
{
    [DisplayFormat(DataFormatString = "{0:n2}", ApplyFormatInEditMode = true)]
    public decimal Amount { get; set; }
}

//MVC Model
public class MyModel
{
    public Bank Bank { get; set; }      
    var ViewBank = new ViewBank() { Amount = Bank.Amount};
}

//View
@Html.TextBoxFor(m => m.Amount, new { id = "tbAmount"})

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X