You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Resharper时XAML元素附加属性无自动补全?Xamarin.Forms开发求助

解决Xamarin.Forms XAML附加属性Resharper无自动补全的问题

针对你在Visual Studio 2017搭配Resharper 2017.3开发Xamarin.Forms应用时,遇到的XAML附加属性无法获得Resharper自动补全,但VS默认IntelliSense正常的问题,这里有几个经过验证的修复方案:

1. 重置Resharper的XAML缓存

Resharper的本地缓存偶尔会出现异常,清理后大概率能恢复正常补全:

  • 点击Visual Studio顶部菜单栏的 Resharper → Options
  • 在弹出的设置窗口中,找到 Environment → General
  • 点击 Clear Caches 按钮,等待清理完成后重启Visual Studio

2. 检查Resharper的XAML智能感知配置

确认Resharper没有禁用附加属性的补全逻辑:

  • 进入 Resharper → Options → Code Editing → XAML → IntelliSense
  • 确保**"Show completion for attached properties"**选项处于勾选状态
  • 同时检查"Completion behavior"下的相关设置,避免有附加属性的显示限制

3. 显式声明Xamarin.Forms命名空间

有时候Resharper对Xamarin.Forms的默认命名空间识别不够精准,尝试在XAML根元素上显式声明完整命名空间:

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:xf="clr-namespace:Xamarin.Forms;assembly=Xamarin.Forms.Core">
    <AbsoluteLayout>
        <BoxView Color="Yellow" xf:AbsoluteLayout.LayoutBounds="0.25,0.25,0.25,0.25"/>
    </AbsoluteLayout>
</ContentPage>

这种显式命名空间的写法通常能让Resharper正确识别并提供附加属性的补全建议。

4. 升级Resharper到兼容版本

Resharper 2017.3属于较旧的版本,可能存在和VS2017、Xamarin.Forms的兼容性问题。如果前面的方法都无效,建议升级到Resharper 2018及以后的兼容版本(注意选择适配VS2017的版本),新版本对Xamarin.Forms的XAML支持做了不少优化。

5. 临时切换到VS默认IntelliSense

如果着急推进开发,可以临时让Resharper让步于VS原生的智能感知:

  • 进入 Resharper → Options → Environment → IntelliSense → General
  • 选择**"Visual Studio"**作为IntelliSense的提供方,这样就能正常使用VS的补全功能,等Resharper的问题解决后再切换回来

内容的提问来源于stack exchange,提问作者Alessandro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:16:26