• ASP.NET MVC custom binder for currency

    I can imagine that’s quite common problem. You have a double (or better decimal) value that you want to show formatted as a currency field. Lets assume we are storing the price data in an object like this: public class TestModel { public double NumberField { get; set; } public double CurrencyField { get; set; } } The MVC view is strongly typed with this TestModel. And the view model value is formatted like this: <%=Html.TextBox(“NumberField”, Model.NumberField)%> <%=Html.TextBox(“CurrencyField”, Model.CurrencyField.ToString(“c”))%> If you set the current culture to German-Swiss, for example in (base)controller like that: protected override void Initialize(System.Web.Routing.RequestContext requestContext) { base.Initialize(requestContext); string culture = "de-CH"; CultureInfo ci = CultureInfo.GetCultureInfo(culture); Thread.CurrentThread.CurrentCulture =…

  • Easiest way to have 2 submit button in one html form

    Here is the easiest way to have two (or more) submit buttons in one html form and to make them “do” something else. It is very helpful if you are planning to implement a toolbar like behavior. Example is from ASP.NET MVC but it does not matter. Since it uses JavaScript to dynamically change the action attribute of a form tag, it can be used everywhere. Here it is: <h2><%= Html.Encode(ViewData["Message"]) %></h2> <script language="javascript" type="text/javascript"> function ChangeFormAction(sender, url) { sender.form.action = url; } </script> <form method="post"> <input id="text" name="text" type="text" value="Hello from Action" /> <br /> <input type="submit" value="Go to action 1" onclick="ChangeFormAction(this, '/Home/Action1')" /> <input type="submit" value="Go to action…