microsoft / microsoft/vscode-dotnettools
Specified ItemsSource for Maui causes OnTextHover crash
@noiseonwires is already working on this.
Since Mar 19, 2026.
- Dominant language
- No language data
- Stars
- 321
- Forks
- 54
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 2
Description
Originally posted as https://github.com/dotnet/vscode-csharp/issues/9085 by @tom-phillips-invida
Type: Bug
Issue Description
Steps to Reproduce
Add a CollectionView to a page, specify the ItemsSource with <x:Array Type="{x:Type x:Int32}">
See the extension crashes.
Expected Behavior
No crash and ability to use hover intellisense
Actual Behavior
Crash, fails to restart
Extension version: 2.131.79
VS Code version: Code 1.111.0 (Universal) (ce099c1ed25d9eb3076c11e4a280f3eb52b4fbeb, 2026-03-06T23:06:10Z)
OS version: Darwin arm64 24.6.0
Modes:
System Info
| Item | Value |
|---|---|
| CPUs | Apple M1 Pro (10 x 2400) |
| GPU Status | 2d_canvas: enabled GPU0: VENDOR= 0x106b [Google Inc. (Apple)], DEVICE=0x0000 [ANGLE (Apple, ANGLE Metal Renderer: Apple M1 Pro, Version 15.7.2 (Build 24G325))], DRIVER_VENDOR=Apple, DRIVER_VERSION=15.7.2 ACTIVE Machine model name: MacBookPro Machine model version: 18.3 direct_rendering_display_compositor: disabled_off_ok gpu_compositing: enabled multiple_raster_threads: enabled_on opengl: enabled_on rasterization: enabled raw_draw: disabled_off_ok skia_graphite: enabled_on trees_in_viz: disabled_off video_decode: enabled video_encode: enabled webgl: enabled webgl2: enabled webgpu: enabled webnn: disabled_off |
| Load (avg) | 5, 7, 10 |
| Memory (System) | 16.00GB (0.14GB free) |
| Process Argv | --crash-reporter-id d102b6e2-b8e3-4611-a956-4aed0c6f0e46 |
| Screen Reader | no |
| VM | 0% |
A/B Experiments
vsliv368:30146709
binariesv615:30325510
f8hc8238:30694864
nativeloc1:31344060
dwcopilot:31170013
dwoutputs:31242946
copilot_t_ci:31333650
e5gg6876:31282496
pythonrdcb7:31342333
6518g693:31463988
aj953862:31281341
6abeh943:31336334
envsdeactivate2:31464701
cloudbuttont:31379625
aihoversummaries_f:31469309
3efgi100_wstrepl:31403338
839jf696:31457053
use-responses-api:31390855
je187915:31454425
ec5jj548:31422691
cp_cls_t_966_ss:31454198
eh16j124_selection_ratio_0:31458808
ge8j1254_inline_auto_hint_haiku:31427726
nes-autoexp-off:31446584
a5gib710:31434435
38bie571_auto:31426784
7a04d226_do_not_restore_last_panel_session:31438103
cp_cls_c_1081:31454833
ia-use-proxy-models-svc:31452481
a43f0575b:31442825
e9c30283:31461165
test_treatment2:31471001
nes-conv-2-3:31474331
control_6dc23131:31467998
idci7584:31464702
edit_mode_hidden:31461530
864ei723_large_tool_results_to_disk:31460878
notips:31471632
ei9d7968:31458072
b1f5h706:31471673
7ef87755:31458076
chat:31457767
8hig5102:31473806
rs_s140_j32:31472769
jdddd261:31472041
nes-rcnt-edit:31471617
f0268191:31471593
hover1:31474145
db0gd219:31473911
commenticon:31473926
nes-notsn-1:31475122
Stack trace from Output tab
2026-03-19 11:00:14.112 [error] Request textDocument/hover failed.
Message: Object reference not set to an instance of an object.
Code: -32000
[object Object]
2026-03-19 11:00:14.993 [error] [textDocument/hover] [LSP] System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.PropertyPath.PropertyPathNode.FindItemsSourceTypeAsync(IParseContext context, XamlElement element, Boolean lookupInParentTree, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.PropertyPath.PropertyPathNode.GetBindingDataTypeForDataContextAsync(IParseContext context, XamlElement element, XamlAttribute attribute, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.PropertyPath.PropertyPathNode.GetBindingDataTypeAsync(IParseContext context, XamlMarkupExtensionNode meNode, XamlAttribute attribute, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.PropertyPath.PropertyPathNode.GetDataTypeAsync(IParseContext context, XamlAttribute attribute, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.PropertyPath.PropertyPathNode.ValidateAsync(IParseContext context, XamlAttribute attribute, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlMarkupExtensionNode.ValidateAsync(IParseContext context, XamlAttribute attribute, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlAttribute.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAttributesAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlPropertyElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidatePropertyElementAsync(IParseContext context, Dictionary`2 setProperties, XamlPropertyElement propertyElement, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlPropertyElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidatePropertyElementAsync(IParseContext context, Dictionary`2 setProperties, XamlPropertyElement propertyElement, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlElement.ValidateChildrenAsync(IParseContext context, Dictionary`2 setProperties, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlObjectElement.ValidateAsync(IParseContext context, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlTree.ValidateAsync()
at Microsoft.VisualStudio.Threading.AsyncLazy`1.<>c__DisplayClass20_0.<<GetValueAsync>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlFileContext.EnsureXamlTreeAsync(CancellationToken cancellationToken, Boolean shouldValidate)
at Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.XamlFileContext.GetHintAsync(Int32 offset, Boolean helpHint, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.CodeAnalysis.Handlers.Hover.XamlHoverHandler.GetHoverAsync(ICodeAnalysisHost host, TextDocument document, SourceText sourceText, Int32 position, CancellationToken cancellationToken)
at Microsoft.VisualStudio.DesignTools.CodeAnalysis.Handlers.Hover.XamlHoverHandler.HandleRequestAsync(TextDocumentPositionParams request, XamlRequestContext context, CancellationToken cancellationToken)
at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem`1.StartRequestAsync[TRequest,TResponse](TRequest request, TRequestContext context, IMethodHandler handler, CancellationToken cancellationToken)
2026-03-19 11:00:14.995 [error] Request textDocument/hover failed.
Message: Object reference not set to an instance of an object.
Code: -32000
[object Object]
| VS Bug 2846130
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.