Hi,
For a customer with an old it-environment I want to run a WPF grid on dotNet 3.5.
So I'm using Infragistics.WPF3.v12.1 ! - I knowm its old, but it is the latest version that supports dotNet 3.5.
No I'm having this problem:
On the most computers all works, but on Windows 2012 server this exception occures:
When the Grid is showing I get an exception with this message: "Could not load file or assembly 'PresentationFramework.AeroLite.dll, Version 3.0.0.0" ... "System.Windows.Controls.MenuItem"
So the problem is that the ContextMenu is trying to load an AuroLite theme??
my XAMl looks like this:
<UserControl x:Class="SearchProjectGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:Everything4Office.UIControls2" xmlns:igDP="http://infragistics.com/DataPresenter" mc:Ignorable="d" Height="201.87" Width="1013.247">
<UserControl.DataContext> <local:SearchProjectList/> </UserControl.DataContext>
<Grid>
<igDP:XamDataGrid Name="AGrid" AutoFit="False" DataSource="{Binding Table}" ActiveDataItem="{Binding ActiveRow, Mode=TwoWay}" Theme="LunaNormal" GroupByAreaMode="MultipleFieldLayoutsFull" IsNestedDataDisplayEnabled="False">
<igDP:XamDataGrid.ContextMenu> <!-- Grid Context Menu --> <ContextMenu> <MenuItem Header="Show Filter Row" Command="{Binding FilterArchive}" CommandParameter="FilterRow" IsCheckable="True" IsChecked="{Binding AllowRecordFiltering, Mode=TwoWay}" /> </ContextMenu> </igDP:XamDataGrid.ContextMenu>
<igDP:XamDataGrid.Resources> <Style x:Key="{x:Type igDP:FieldChooser}" TargetType="{x:Type igDP:FieldChooser}" > <Setter Property="FieldDisplayOrder" Value="SameAsDataPresenter"/> <Setter Property="DisplayHiddenFieldsOnly" Value="False" /> <Setter Property="FieldGroupSelectorVisibility" Value="Visible" /> </Style>
<Style x:Key="StrickThroughValuePresenter" TargetType="{x:Type igDP:CellValuePresenter}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type igDP:CellValuePresenter}"> <TextBlock Margin="5 0 0 0" VerticalAlignment="Center" HorizontalAlignment="Left" TextDecorations="Strikethrough" Text="{Binding RelativeSource={RelativeSource TemplatedParent},Path=Value, StringFormat={}{0:F2}}" /> </ControlTemplate> </Setter.Value> </Setter> </Style>
</igDP:XamDataGrid.Resources> <igDP:XamDataGrid.FieldSettings> <igDP:FieldSettings AllowFixing="NearOrFar" AllowRecordFiltering="true" AllowEdit="False" LabelClickAction="SortByMultipleFields" FilterOperatorDefaultValue="Contains" /> </igDP:XamDataGrid.FieldSettings> <igDP:XamDataGrid.FieldLayoutSettings> <igDP:FieldLayoutSettings AllowAddNew="False" AllowDelete="False" HeaderPrefixAreaDisplayMode="FieldChooserButton" AutoGenerateFields="True" HeaderPlacementInGroupBy="OnTopOnly" /> </igDP:XamDataGrid.FieldLayoutSettings> </igDP:XamDataGrid>
</Grid>
</UserControl>
What am I doing wrong?
The exact exception:
Failed object initialization (ISupportInitialize.EndInit). Could not load file or assembly 'PresentationFramework.AeroLite, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. General Exception (Exception from HRESULT: 0x80131500) Error at object 'System.Windows.Controls.MenuItem' in markup file 'Everything4Office.UIControls2;component/views/searchprojectgrid.xaml'.Source:PresentationFrameworkStackTrace: at System.Windows.Markup.XamlParseException.ThrowException(String message, Exception innerException, Int32 lineNumber, Int32 linePosition, Uri baseUri, XamlObjectIds currentXamlObjectIds, XamlObjectIds contextXamlObjectIds, Type objectType) at System.Windows.Markup.XamlParseException.ThrowException(ParserContext parserContext, Int32 lineNumber, Int32 linePosition, String message, Exception innerException) at System.Windows.Markup.BamlRecordReader.ThrowExceptionWithLine(String message, Exception innerException) at System.Windows.Markup.BamlRecordReader.ElementEndInit(Object& element) at System.Windows.Markup.BamlRecordReader.ReadElementEndRecord(Boolean fromNestedBamlRecordReader) at System.Windows.Markup.BamlRecordReader.ReadRecord(BamlRecord bamlRecord) at System.Windows.Markup.BamlRecordReader.Read(Boolean singleRecord) at System.Windows.Markup.TreeBuilderBamlTranslator.ParseFragment() at System.Windows.Markup.TreeBuilder.Parse() at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream) at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator) at Everything4Office.UIControls2.SearchProjectGrid.InitializeComponent() at Everything4Office.UIControls2.SearchProjectGrid..ctor(SearchProjectList viewModel) at Projects4Office.Module.ProjectManager.ProjectManager..ctor(ProjectManagerForm screenBase, Boolean ribbonIsVisible, ISession session) at Projects4Office.Module.ProjectManager.ProjectManagerForm.StartsItsForm(Boolean ribbonVisible) at Everything4Office.UserInterface.MainForm.ModuleScreen.Show() at Everything4Office.UserInterface.MainForm.UltraToolbarsManager_BeforeRibbonTabSelected(Object sender, BeforeRibbonTabSelectedEventArgs e) at Infragistics.Win.UltraWinToolbars.UltraToolbarsManager.OnBeforeRibbonTabSelected(BeforeRibbonTabSelectedEventArgs e) at Infragistics.Win.UltraWinToolbars.UltraToolbarsManager.FireEvent(ToolbarEventIds id, EventArgs e) at Infragistics.Win.UltraWinToolbars.Ribbon.OnSelectedTabItemChanging(Object sender, SelectedTabItemChangingEventArgs e) at Infragistics.Win.UltraWinTabs.TabManager.set_SelectedTabItem(ITabItem value) at Infragistics.Win.UltraWinTabs.TabManager.TabClick(ITabItem tab) at Infragistics.Win.UltraWinToolbars.Ribbon.RibbonTabManager.TabClick(ITabItem tab) at Infragistics.Win.UltraWinTabs.TabItemUIElement.OnMouseDown(MouseEventArgs e, Boolean adjustableArea, UIElement& captureMouseForElement) at Infragistics.Win.UIElement.OnMouseDown(MouseEventArgs e, Boolean adjustableArea, UIElement& captureMouseForElement) at Infragistics.Win.TextUIElementBase.OnMouseDown(MouseEventArgs e, Boolean adjustableArea, UIElement& captureMouseForElement) at Infragistics.Win.ControlUIElementBase.ProcessMouseDownHelper(Object sender, MouseEventArgs e) at Infragistics.Win.ControlUIElementBase.ProcessMouseDown(Object sender, MouseEventArgs e) at Infragistics.Win.Utilities.ProcessEvent(Control control, ProcessEvent eventToProcess, EventArgs e) at Infragistics.Win.UltraControlBase.OnMouseDown(MouseEventArgs e) at Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea.OnMouseDown(MouseEventArgs e) at System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Inner exception:Could not load file or assembly 'PresentationFramework.AeroLite, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. General Exception (Exception from HRESULT: 0x80131500)Source:PresentationFrameworkStackTrace: at System.Windows.Markup.XamlParseException.ThrowException(String message, Exception innerException, Int32 lineNumber, Int32 linePosition, Uri baseUri, XamlObjectIds currentXamlObjectIds, XamlObjectIds contextXamlObjectIds, Type objectType) at System.Windows.Markup.XamlParseException.ThrowException(ParserContext parserContext, Int32 lineNumber, Int32 linePosition, String message, Exception innerException) at System.Windows.Markup.BamlRecordReader.ThrowExceptionWithLine(String message, Exception innerException) at System.Windows.Markup.BamlRecordReader.ElementEndInit(Object& element) at System.Windows.Markup.BamlRecordReader.ReadElementEndRecord(Boolean fromNestedBamlRecordReader) at System.Windows.Markup.BamlRecordReader.ReadRecord(BamlRecord bamlRecord) at System.Windows.Markup.BamlRecordReader.Read(Boolean singleRecord) at System.Windows.Markup.TreeBuilderBamlTranslator.ParseFragment() at System.Windows.Markup.TreeBuilder.Parse() at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream) at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator) at Everything4Office.UIControls2.SearchProjectGrid.InitializeComponent() at Everything4Office.UIControls2.SearchProjectGrid..ctor(SearchProjectList viewModel) at Projects4Office.Module.ProjectManager.ProjectManager..ctor(ProjectManagerForm screenBase, Boolean ribbonIsVisible, ISession session) at Projects4Office.Module.ProjectManager.ProjectManagerForm.StartsItsForm(Boolean ribbonVisible) at Everything4Office.UserInterface.MainForm.ModuleScreen.Show() at Everything4Office.UserInterface.MainForm.UltraToolbarsManager_BeforeRibbonTabSelected(Object sender, BeforeRibbonTabSelectedEventArgs e) at Infragistics.Win.UltraWinToolbars.UltraToolbarsManager.OnBeforeRibbonTabSelected(BeforeRibbonTabSelectedEventArgs e) at Infragistics.Win.UltraWinToolbars.UltraToolbarsManager.FireEvent(ToolbarEventIds id, EventArgs e) at Infragistics.Win.UltraWinToolbars.Ribbon.OnSelectedTabItemChanging(Object sender, SelectedTabItemChangingEventArgs e) at Infragistics.Win.UltraWinTabs.TabManager.set_SelectedTabItem(ITabItem value) at Infragistics.Win.UltraWinTabs.TabManager.TabClick(ITabItem tab) at Infragistics.Win.UltraWinToolbars.Ribbon.RibbonTabManager.TabClick(ITabItem tab) at Infragistics.Win.UltraWinTabs.TabItemUIElement.OnMouseDown(MouseEventArgs e, Boolean adjustableArea, UIElement& captureMouseForElement) at Infragistics.Win.UIElement.OnMouseDown(MouseEventArgs e, Boolean adjustableArea, UIElement& captureMouseForElement) at Infragistics.Win.TextUIElementBase.OnMouseDown(MouseEventArgs e, Boolean adjustableArea, UIElement& captureMouseForElement) at Infragistics.Win.ControlUIElementBase.ProcessMouseDownHelper(Object sender, MouseEventArgs e) at Infragistics.Win.ControlUIElementBase.ProcessMouseDown(Object sender, MouseEventArgs e) at Infragistics.Win.Utilities.ProcessEvent(Control control, ProcessEvent eventToProcess, EventArgs e) at Infragistics.Win.UltraControlBase.OnMouseDown(MouseEventArgs e) at Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea.OnMouseDown(MouseEventArgs e) at System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Hello oskamf,
From the attached stack trace, it does sound as if the ContextMenu is trying to load this "AeroLite" theme, although this is not related to Infragistics - it sounds more like a default theme for Windows Server 2012 for the MenuItem element, or something related to this 'Everything4Office.UIControls2;component/views/searchprojectgrid.xaml' file, which I am rather unsure what that is.
I have been investigating into this issue, and I found the following forum thread that discusses this issue: https://social.msdn.microsoft.com/Forums/vstudio/en-US/3557cc5a-21db-4fa1-8f0e-ac6ee3c5bf4b/presentationframeworkaerolite-is-missing?forum=wpf. Perhaps the steps mentioned on that forum thread may help you to resolve this issue?
It is also worth noting that it seems likely to me that this exception should be a "first-chance" exception, and should likely be handled by default. I am rather curious if you are able to Continue through it? Also, it appears that version 12.1 is not one of the "officially" supported environments for Windows Server 2012, as we list versions 14.1 and later for use on that operating system on our supported environments page: https://es.infragistics.com/support/supported-environments.
Please let me know if you have any other questions or concerns on this matter.
Sincerely,AndrewAssociate Developer