Ext.NET 4.5 Now Available

Ext.NET 4.5 has been released and is now available to download directly or install using NuGet.

Ext.NET WebForms

Install-Package Ext.NET

Ext.NET MVC

Install-Package Ext.NET.MVC

Ext JS 6.5.2

Ext.NET 4.5 includes the latest Ext JS release, 6.5.2. This version address over 100 issues since Ext JS 6.5.1 which was bundled in Ext.NET 4.4.

The detailed list of client-side changes in Ext JS 6.5.2 is available for review here.

Native InputMask Support

Since Ext JS 6.5.0, Sencha has been successively making a native implementation of InputMask in the Ext.form.field.Text component. This time it was the first working version released, and we’ve included it as a simpler alternative to our already existing plugin implementation of the text field’s input mask.

To use the native (and simplified) version of input mask in Ext.NET, you can use this syntax:

<ext:TextField ID="TextField1" runat="server">
     <InputMask Pattern="(99) 9999-9999" />
</ext:TextField> 

You can also make it even simpler by using the InputMaskString setting:

<ext:TextField ID="TextField1" runat="server" InputMaskString="(99) 9999-9999" /> 

We’ve come up with full examples showcasing the component and more usage: WebForms example, MVC example.

Messagebox’s Mask Click Action

The message box’s modal mask can now be set to dismiss the message box upon click/tap using the MessageBox.Show() method. The MessageBoxConfig class now has the MaskClickAction to reflect to the new ExtJS feature. It can be set to either MaskClickActions.Focus to move focus to the message box when the modal mask is clicked, or MaskClickActions.Hide to dismiss the message box as soon as the user clicks the modal mask’s area. The code below shows an example usage of the feature, hiding the displayed dialog as soon as the user clicks/taps the masked area around the window:

X.Msg.Show(new MessageBoxConfig()
{
    Title = "Server message",
    Message = "The system has searched records the records and<br />the matched entries are available for review.",
    MaskClickAction = MaskClickActions.Hide
}); 

Notice the default is MaskClickActions.Focus so — provided defaults are not overridden — setting this in the message box will not really change anything. Setting MaskClickActions.Hide will then make it be dismissed when anywhere in the masked (greyed out) area is clicked/tapped.

ColorSelector’s RGB color specification support

The ColorSelector Format config option now supports returning RGB and RGBA (red, green, blue with alpha/transparency) color values over the component, for convenience. This controls how the color value returns from the component when queried. For example:

<ext:ColorSelector
    ID="ColorSelector1"
    runat="server"
    ShowOkCancelButtons="true"
    Format="lcrgba"
    /> 

The component set like above will return the chosen color as rgba(255,255,255,1). Being N an integer number between 0 and 255, and A a floating-point number between 0 and 1, the available options are lcrgb (lowercase, rgb(N,N,N)), lcrgba (lowercase, rgba(N,N,N,a)), ucrgb (uppercase, RGB(N,N,N)), ucrgba (uppercase, RGBA(N,N,N,A)). They are provided by the Ext.Net.ColorStringFormat enum, so you don’t really have to memorize all the options.

Other Notable Revisions

The full list of Ext.NET 4.5 changes is available for review on GitHub, with some highlights including:

  1. [#1563] Ext.NET pages do not load in Android 8 devices.
  2. [#1559] Desktop context menu’s custom entries can’t be disabled.
  3. [#1554] FieldSet legends broken in Safari 11.
  4. [#1553] Spotlight’s show() method support for component as argument is broken.

Your Feedback

Your feedback and comments are greatly appreciated. Please feel free to contact us at hello@ext.net if you have any questions or comments, or join the conversations happening within the Ext.NET Community forums.

Technical support questions are best asked in the forums. The public discussion may help others in the future, and allows the community to participate.

Follow @extnet on Twitter to stay up-to-date.

Leave a Reply