I am using 11.2 v2125 webdatagrid with a dropdown provider. It works throughout my site except on 1 page I have. In development it works everywhere but on production there is one page that when clicking on the cell the dropdown provider will not display. It acts as though there is no dropdown provider and displays the text editor.
This page has 2 grids; one with a dropdown provider that works and another with a dropdown provider that won't show. It does not work in Chrome, IE, Safari, or Firefox.
I finally traced it down to switching IE9 to compatibility mode will display the dropdown provider. Any clue as to what is going on here? The dropdown provider is wired just like all the other ones that I am using and have been using for months without a problem.
Steve
Hello sperna,
Thank you for contacting Infragistics!
This behavior may be related to CSS. Please let me know there are customized CSS classes being used.
If migration or upgrade is involved, we may verify is the CSS classes' version matches the DLL's.
If the issue persists, we may need more information regarding the application. If possible please attach a copy of the markup, and the events associated with the WebDataGrid.
If you have any questions, please let me know as well.
Thanks for the response Vivian.
There are no custom CSS classes being used. I re-copied all the CSS and images from the default theme over to production to be sure they matched development. I am still having the same issue. The dropdown provider does not work on my 1 page in production but does work in development. The only way it works in production is to switch to IE9 compatibility mode. It won't work in any other browsers.
Thanks,
Vivian-
Upon further investigation I do have the problem in development as well. Apparently IE9 added my local machine to the IE9 Compatibility mode list. Once I turned that it off the problem persists in development as well. I trimmed down an example to reproduce the behavior.
The first grids dropdown provider works fine for all browsers. But the 2nd grid in the markup the dropdown providers do not work in any browser except IE9 with compatibility mode ON. There are no events and they are bare bones grids for demonstration.
You mentioned it could be a CSS issue. Is there a date/timestamp on the CSS that matches with the DLLs I am using? Any help would be greatly appreciated as it's kind of urgent. As always :)
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WorkReport3.aspx.vb" Inherits="Tower.WorkReport3" %>
<%@ Register Assembly="Infragistics35.Web.v11.2, Version=11.2.20112.2125, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb" Namespace="Infragistics.Web.UI.ListControls" TagPrefix="ig" %>
<%@ Register Assembly="Infragistics35.Web.v11.2, Version=11.2.20112.2125, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb" Namespace="Infragistics.Web.UI.GridControls" TagPrefix="ig" %>
<%@ Register Assembly="Infragistics35.Web.jQuery.v11.2, Version=11.2.20112.2125, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb" Namespace="Infragistics.Web.UI.EditorControls" TagPrefix="ig" %>
<%@ Register Assembly="Infragistics35.Web.v11.2, Version=11.2.20112.2125, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb" Namespace="Infragistics.Web.UI.EditorControls" TagPrefix="ig" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<ig:WebDataGrid ID="grdWorkTime" runat="server" Height="100px" Width="750px"
AutoGenerateColumns="False" EnableViewState="False"
DataKeyFields="Field_Service_Time_Id">
<Columns>
<ig:BoundDataField DataFieldName="Field_Service_Time_Id" Hidden="True"
Key="Field_Service_Time_Id">
</ig:BoundDataField>
<ig:BoundDataField DataFieldName="Employee_Id" Key="Employee_Id" >
<Header Text="Employee" />
<ig:BoundDataField DataFieldName="Description" Key="Description">
<Header Text="Description" />
</Columns>
<Behaviors>
<ig:Selection RowSelectType="Single">
</ig:Selection>
<ig:ColumnResizing>
</ig:ColumnResizing>
<ig:EditingCore BatchUpdating="false" AutoCRUD="false">
<ig:RowAdding EditModeActions-EnableOnActive="True" EditModeActions-EnableOnKeyPress="True" EditModeActions-MouseClick="Single">
<EditModeActions MouseClick="Single" EnableOnKeyPress="True" EnableOnActive="True" />
<ColumnSettings>
<ig:RowAddingColumnSetting ColumnKey="Employee_Id"
EditorID="grdEmployee_DropDownProvider1" />
<ig:RowAddingColumnSetting ColumnKey="Description"
EditorID="DropDownProvider2" />
</ColumnSettings>
</ig:RowAdding>
<ig:RowDeleting />
</Behaviors>
</ig:EditingCore>
<ig:Activation>
</ig:Activation>
<ig:RowSelectors>
</ig:RowSelectors>
<EditorProviders>
<ig:DropDownProvider ID="grdEmployee_DropDownProvider1">
<EditorControl ID="EditorControl1" DisplayMode="DropDown"
DropDownContainerMaxHeight="200px"
TextField="Employee_Name"
ValueField="Employee_Id"
EnableAnimations="False" runat="server"
EnableCustomValues="false"
DropDownContainerWidth="200px">
<DropDownItemBinding TextField="Employee_Name" ValueField="Employee_Id"></DropDownItemBinding>
<Items>
<ig:DropDownItem selected="False"
text="Steve" value="0">
</ig:DropDownItem>
text="Noah" value="1">
</Items>
</EditorControl>
</ig:DropDownProvider>
<ig:DropDownProvider ID="DropDownProvider2">
<EditorControl ID="EditorControl2" DisplayMode="DropDown"
TextField="Property_Value"
ValueField="System_Property_Id"
<DropDownItemBinding TextField="Property_Value" ValueField="System_Property_Id"></DropDownItemBinding>
<ig:DropDownItem Text="Arrived at job site." Value="0"></ig:DropDownItem>
<ig:DropDownItem Text="Left job site." Value="1"></ig:DropDownItem>
</EditorProviders>
</ig:WebDataGrid>
<ig:WebDataGrid ID="grdTest" runat="server" Height="100px" Width="900px"
AutoGenerateColumns="False" EnableViewState="False" EnableAjaxViewState="true"
DataKeyFields="Field_Service_Line_Number" >
<ig:BoundDataField DataFieldName="Field_Service_Line_Number"
Key="Field_Service_Line_Number">
<Header Text="Field_Service_Line_Number" />
<ig:RowAddingColumnSetting ColumnKey="Field_Service_Line_Number"
EditorID="DropdownProvider20" />
EditorID="DropdownProvider1" />
<ig:DropDownProvider ID="DropDownProvider20">
<EditorControl ID="EditorControl4" DisplayMode="DropDown"
text="Bill" value="1">
<ig:DropDownProvider ID="DropDownProvider1">
<EditorControl ID="EditorControl3" DisplayMode="DropDown"
TextField="Description_Text"
ValueField="Description_Id"
EnableCustomValues="false">
<ig:DropDownItem text="Great Employee" value="1">
<ig:DropDownItem text="Bad Employee" value="2">
</div>
</form>
</body>
</html>
Public Class WorkTime
Private m_intFieldServiceTimeId As Integer
Private m_intEmployeeId As Integer
Private m_strDescription As String
Public Sub New(ByVal intFieldServiceTimeId As Integer, ByVal intEmployeeId As Integer, _
ByVal strDescription As String)
m_strDescription = strDescription
m_intEmployeeId = intEmployeeId
m_intFieldServiceTimeId = intFieldServiceTimeId
End Sub
Public Property Field_Service_Time_Id() As Integer
Get
Return m_intFieldServiceTimeId
End Get
Set(ByVal value As Integer)
m_intFieldServiceTimeId = value
End Set
End Property
Public Property Employee_Id() As Integer
Return m_intEmployeeId
m_intEmployeeId = value
Public Property Description() As String
Return m_strDescription
Set(ByVal value As String)
m_strDescription = value
End Class
Public Class Test
Private m_intFieldServiceLineNumber As Integer
Public Sub New(ByVal intFieldServiceLineNumber As Integer, ByVal strDescription As String)
m_intFieldServiceLineNumber = intFieldServiceLineNumber
Public Property Field_Service_Line_Number() As Integer
Return m_intFieldServiceLineNumber
m_intFieldServiceLineNumber = value
Public Property Description() As Integer
Partial Public Class WorkReport3
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Try
Dim WorkList As IList(Of WorkTime) = New List(Of WorkTime)
Dim objWorkTime As New WorkTime(0, 0, "")
'WorkList.Add(objWorkTime)
grdWorkTime.ClearDataSource()
grdWorkTime.DataKeyFields = "Field_Service_Time_Id"
grdWorkTime.DataSource = WorkList
grdWorkTime.DataBind()
Dim TestList As IList(Of Test) = New List(Of Test)
grdTest.ClearDataSource()
grdTest.DataKeyFields = "Field_Service_Line_Number"
grdTest.DataSource = TestList
grdTest.DataBind()
Catch ex As Exception
Dim i As Integer = 1
MsgBox("An error occured in page_load: " & ex.Message)
End Try
Hello Steve,
I have looked over your code extensively and after much testing, realized the above code is broken due to a case sensitive misstype. If you look at the following items of the second grid:
....
And then take a look at the binding:
<ig:RowAddingColumnSetting ColumnKey="Field_Service_Line_Number" EditorID="DropdownProvider20" /><ig:RowAddingColumnSetting ColumnKey="Description" EditorID="DropdownProvider1" />
The EditorID's differ by a lower/upper case D on the word down. If you correct the case to match in both places, the issue will be resolved.
Sincerely, Jon Infragistics, Inc. <http://ko.infragistics.com/support/get-help.aspx>
Good catch Jon. My bad. I usually copy & paste the ids to make sure I don't do something stupid like that.