Version

Known Issues and Limitations ASPNET 17.1

Known Issues and Limitations Summary

The following table summarizes the known issues and limitations of the Infragistics® ASP.NET 2017.1 release. Detailed explanations of all of the issues and the existing workarounds are provided after the summary table.

Legend

  • Workaround - Workaround available

  • No Workaround - No known workaround

  • Fix Planned - Fix planned

WebDataGrid

Issue Description Status

WebDataGrid’s drop-down provider does not support multiselection.

No Workaround

When there is an unbound column and OnInitializeRow event is handled, Paging and Sorting features don’t work as expected.

No Workaround

Value of drop down item is displayed if the cell value isn’t on the current page of the DropDownProvider even though the text is known from the grid cell. The feature is supposed to work like this because the WebDataGrid is databound to values that are different from what is expected to be displayed in the cells as content.

Workaround

In scenarios where the RowEditTemplate contains WebTextEditors and is manually opened for the adding row the values of the WebTextEditors are not cleared after editing finishes. As a result when entering edit mode again the previous values are retained.

Workaround

When the Behaviors Designer is opened from Source View and new client side event handler is added, the script section block is not modified with the JavaScript handler function.

Workaround

Turn on key events on composition in Firefox. Set the dom.keyboardevent.dispatch_during_composition value to true in Firefox about:config page in order to have keyboard events during composition.

Workaround

WebHierarchicalDataGrid

Issue Description Status

HierarchicalDataGrid’s rows does not render past depth bigger than 200 in Firefox

No Workaround

WebTab

Issue Description Status

ViewState is corrupted when you use WebDataTree inside a WebTab

When you use the WebDataTree control inside a WebTab the ViewState is corrupted.

Workaround: In order for this scenario to work you should call InstantiateTemplates() method of the WebTab at the Page_Init().

Workaround

Cannot access templated controls on postback before the InstantiateTemplates() methods is called

Controls that are instantiated inside a template cannot be accessed before the InstantiateTemplates() method of the WebTab is called.

Workaround: In order for this scenario to work you should call InstantiateTemplates() method of the WebTab before attempting to access a control from the template.

Workaround

WebUpload / WebCaptcha

Issue Description Status

When you drop the WebUpload/WebCaptcha control into the design pane it will automatically add the control’s httpModules and httpHandlers in the system.web section. That configuration is not valid for IIS7 and newer running in integrated mode.

Workaround

WebEditors

Issue Description Status

By default, IME is disabled for all the editors, except text and mask ones, but in WebKit browsers IME is available for all of them, which may lead to some unexpected results, while typing.

No Workaround

WebNumericEditor

Issue Description Status

WebNumericEditor MaxValue option can work correctly only when set to 1000000000000000 or less. WebNumericEditor MinValue option can work correctly only when set to -1000000000000000 or greater.

No Workaround

Trident

Issue Description Status

Trident layout engine handles double click on a HTML checkbox, by changing its state only once. This may lead to an inconsistent behavior in some of the Infragistics controls, those that render checkbox. For example, if WebDropDown has multiple selection enabled, double clicking on a WebDropDown item checkbox, will result in selecting the item, but adding and removing the item’s text in the drop down input.

Note

Workaround: In order for this scenario to work you should manually change checkbox state, when checkbox, inside WebDropDown item (or any other control), is double-clicked, in Internet Explorer.

Workaround

WebDataGrid

WebDataGrid’s drop-down provider does not support multiselection, because all get/set value operations while exchange values between WebDropDown editor and grid, do target only single selection. If editor somehow got multiple selected items, then that will corrupt editor provider and result will be unpredictable.

Unbound column and OnInitializeRow event handler

UnboundColumn + OnInitializeRow event handled, does not work well with Paging and Sorting features enabled. Unexpected behavior may occur when using those in combination, such as the Rows collection being sorted before an unbound record is being updated, thus resulting in an exception.

Drop-down item text is not correctly retrieved by WebDataGrid DropDownProvider when paging is enabled

Value of drop down item is displayed if the cell value isn’t on current page of the DropDownProvider even though the text is known from the grid cell. The feature is supposed to work like this because the WebDataGrid is data bound to values that are different from what is expected to be displayed in the cells as content. The workaround for that issue is to implement a custom logic on initial load which handles the rows initializing and fills the Text property of the cells in the specified column by querying the web drop-down data source by the specified value. In the following code you can see an example how to accomplish that.

In ASPX:

<EditorProviders>
      <ig:DropDownProvider ID="ddp1">
            <EditorControl
                  ClientIDMode="Predictable"
                  EnableAutoFiltering="Server"
                  AutoFilterResultSize="2"
                  AutoFilterTimeoutMs="1000"
                  EnableAnimations="false"
                  EnablePaging="true"
                  PageSize="4"
                  AutoFilterQueryType="Contains"
                  DataSourceID="SqlDataSource2"
                  DropDownContainerMaxHeight="200px">
                  <DropDownItemBinding TextField="CAtegoryName" ValueField="CategoryID" />
            </EditorControl>
      </ig:DropDownProvider>
</EditorProviders>

The workaround:

In ASPX:

<ig:WebDataGrid AutoGenerateColumns="False" ID="WebDataGrid1" runat="server"  OnInitializeRow="WebDataGrid1_InitializeRow">

In C#:

protected void WebDataGrid1_InitializeRow(object sender, RowEventArgs e)
{
    if (!this.Page.IsPostBack)
    {
        if (e.Row.Index < 8)
        {
            e.Row.Items[3].Text = texts[e.Row.Index];
        }
    }
}

// This is only an example. Actual usage would have to extract these from a data source provider.
string[] texts = new string[] {
    "Beverages",
    "Condiments",
    "Confections",
    "Dairy Products",
    "Grains/Cereals",
    "Meat/Poultry",
    "Produce",
    "Seafood"
};

When programmatically opening the RowEditTemplate for the adding row, the values of the WebTextEditors used in the template will be persisted

In scenarios where the RowEditTemplate contains WebTextEditors and is manually opened for the adding row the values of the WebTextEditors are not cleared after editing finishes. As a result when entering edit mode again the previous values are retained.

In C#:

protected void Page_PreRender(object sender, EventArgs e)
{
    var templateContainer=  this.WebDataGrid.Behaviors.EditingCore.Behaviors.RowEditTemplate.TemplateContainer;
    WebTextEditor editor =(WebTextEditor)templateContainer.FindControl( "control_Item");
    editor.Value = null;
}

ClientSide event handler is not automatically added to aspx script block section

In order to add client events for certain behaviors from the Behaviors Designer by double clicking on the client event box, it is recommended that WebDataGrid’s Designer is opened from page Design View and not from page Source View.

There is a way to add client events from Source View, with Visual Studio Properties window.

Example: Open the page in a Source View → select WebDataGrid markup tag, go to BehaviorsEditingCoreEditingClientEvents list in properties window and double click on RowDeleted event in order to generate it.

This limitation applies also to WebHierarchicalDataGrid control.

DropDownProvider keyboard events are missing during IME composition

Turn on key events on composition in Firefox. Set the dom.keyboardevent.dispatch_during_composition value to true in Firefox’s about:config page in order to have keyboard events during composition.

HierarchicalDataGrid

Expanded rows of HierarchicalDataGrid do not render past a certain depth in Firefox

HierarchicalDataGrid’s rows does not render past depth bigger than 200 in Firefox caused by limitation in DOM Depth in this particular browser. This limitation is also documented by Firefox here.

WebUpload/WebCaptcha

HTTP error 500.22 is thrown when you add the WebUpload/WebCaptcha from the toolbox for IIS7 and above

There are few ways to handle this issue. First you can just add the control without using the toolbox and add manually the HTTP Modules and Handlers. If you prefer dropping the control to the designer, you can either, go and manually change the modules to the system.webServer/modules section or you can use the AppCmd from the command line to migrate your application following the instructions in the error message.

Same goes for the HTTP Handler of the WebCaptcha control.

WebEditors

By default, IME is disabled for all the editors, except text and mask ones, but in WebKit browsers IME is available for all of them, which may lead to some unexpected results, while typing.

By default, IME is disabled for all the editors, except text and mask ones, but in WebKit browsers IME is available for all of them, which may lead to some unexpected results, while typing.

WebNumericEditor

WebNumericEditor MaxValue/MinValue options are limited to values that are not represented as exponential on the client.

WebNumericEditor MaxValue does not work correctly with values larger than 1000000000000000 as numbers larger than that are expressed in Scientific notation. The number that is passed in E notation is rounded at the client which may result in incorrect maximal allowed value. WebNumericEditor MinValue does not work correctly with values smaller than -1000000000000000 as numbers smaller than that are expressed in Scientific notation. The number that is passed in E notation is rounded at the client which may result in incorrect minimal allowed value.

Trident

Trident layout engine handles double click on a HTML checkbox, by changing its state only once. This may lead to an inconsistent behavior in some of the Infragistics controls, those that render checkbox. For example, if WebDropDown has multiple selection enabled, double clicking on a WebDropDown item checkbox, will result in selecting the item, but adding and removing the item’s text in the drop down input.

In order for this scenario to work you should manually change checkbox state, when checkbox, inside WebDropDown item (or any other control), is double-clicked, in Internet Explorer.

The workaround:

In ASPX:

<ig:WebDropDown ID="WebDropDown1" MultipleSelectionType="Checkbox" EnableMultipleSelection="true" runat="server" >
    <ClientEvents Initialize="WebDropDown1_Initialize" />
</ig:WebDropDown>

<script>
function WebDropDown1_Initialize(event) {
 $addHandler($find("WebDropDown1")._elements["List"], 'dblclick', function (e) {
  if (e.target.type === "checkbox" && ($util.IsIE || $util.IsEdge)) {
   e.target.checked = !e.target.checked;
  }
 });
}
</script>