我正在将 Silverlight 3 项目转换为 Silverlight 4。我最近让该项目能够运行,但在实例化搜索窗口时遇到了问题。VS 向我抛出以下错误:
Microsoft JScript runtime error: Unhandled Error in Silverlight Application Set property 'System.Windows.FrameworkElement.Style' threw an exception. [Line: 242 Position: 46] at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator)
at ESM.Visualization.SearchWindow.InitializeComponent()
at ESM.Visualization.SearchWindow..ctor(Map mapWindow, String addressServiceUrl, String projectServiceUrl)
at ESM.Visualization.MainPage.InstantiateSearchWindow()
at ESM.Visualization.MainPage.MapWindow_Progress(Object sender, ProgressEventArgs e)
at ESRI.ArcGIS.Client.Map.layersProgressHandler(Object sender, ProgressEventArgs args)
at ESRI.ArcGIS.Client.LayerCollection.layer_OnProgress(Object sender, ProgressEventArgs args)
at ESRI.ArcGIS.Client.Layer.ProgressHandler.Invoke(Object sender, ProgressEventArgs args)
at ESRI.ArcGIS.Client.Layer.OnProgress(Int32 progress)
at ESRI.ArcGIS.Client.DynamicLayer.bitmap_DownloadProgress(Object sender, DownloadProgressEventArgs e, Image img, EventHandler`1 onProgressEventHandler, Int32 id)
at ESRI.ArcGIS.Client.DynamicLayer.<>c__DisplayClass7.<getSourceComplete>b__4(Object sender, DownloadProgressEventArgs e)
at MS.Internal.CoreInvokeHandler.InvokeEventHandler(Int32 typeIndex, Delegate handlerDelegate, Object sender, Object args)
at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName)
我研究了错误并尝试按照此解决方案重新安装 Silverlight 。但是错误仍然发生。我看了这个 SO question,但我的 App.xaml 几乎没有 242 行。这是我在第 242 行附近的 MainPage.xaml:
<StackPanel Orientation="Vertical" HorizontalAlignment="Left" Grid.Row="2" VerticalAlignment="Bottom">
<esriToolkit:Navigation x:Name="MapNavigation" Margin="5" Map="{Binding ElementName=MapWindow}" Visibility="Collapsed" />
<!--<esri:ScaleBar x:Name="MainScaleBar" Margin="5" MapUnit="DecimalDegrees" Foreground="Black"
Map="{Binding ElementName=MapWindow}"
DisplayUnit="Miles" Visibility="Visible" />-->
</StackPanel>
这是我试图实例化的搜索窗口的 .xaml(在第 242 行左右):
<grid:AgDataGrid x:Name="grdAddressResults" Grid.Row="1" Grid.Column="0" ColumnsAutoWidth="True"
ShowTotals="False" FocusMode="Row" FocusedRowChanged="grdResults_FocusedRowChanged"
IsMultiSelect="False" Margin="0,10,0,0">
<grid:AgDataGrid.Columns>
<grid:AgDataGridColumn FieldName="Address" />
<grid:AgDataGridColumn FieldName="X" Visible="False" />
<grid:AgDataGridColumn FieldName="Y" Visible="False" />
</grid:AgDataGrid.Columns>
<grid:AgDataGrid.TotalSummary>
<grid:AgDataGridSummaryItem FieldName="Address" SummaryType="Count" Title="Matches Found" />
</grid:AgDataGrid.TotalSummary>
</grid:AgDataGrid>