主窗口上的“DataContext 未设置”消息

问题描述

我在 Visual Studio 的主窗口 XAML 上收到 XLS1106“未设置 DataContext”消息。据我所知,我没有使用任何与此相关的东西,也没有任何损坏。我只想压制这条消息,但我不确定它为什么会在那里。

这是我的整个 XAML:

<Window x:Name="MyWindow" x:Class="whiteboard.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:whiteboard"
        mc:Ignorable="d"
        Title="Untitled - CFwhiteboard" Height="450" Width="800" MouseDown="WindowMouseDown" MouseMove="WindowMouseMove" KeyDown="WindowKeyDown" KeyUp="WindowKeyUp" Icon="icons8-interactive-whiteboard-100.png" Loaded="WindowLoaded" Closing="WindowClosing">
    <Window.Resources>
        <ResourceDictionary>
            <FrameworkElement x:Key="CursorRectangle" Cursor="Resources/Cursors/rectangle.cur"/>
            <FrameworkElement x:Key="CursorSquare" Cursor="Resources/Cursors/lockrect.cur"/>
            <FrameworkElement x:Key="CursorEllipse" Cursor="Resources/Cursors/ellipse.cur"/>
            <FrameworkElement x:Key="CursorCircle" Cursor="Resources/Cursors/lockellipse.cur"/>
        </ResourceDictionary>
    </Window.Resources>
    <Canvas x:Name="MainCanvas"/>
</Window>

解决方法

该消息是误报。 Visual Studio 的最新预览版中提供了该问题的修复程序:

Microsoft 解决方案 - Bhavya Udayashankar [MSFT] 已关闭 - 已修复···

已发布针对此问题的修复程序!安装来自 https://visualstudio.microsoft.com/downloads/ 的最新预览版本。感谢您提供有助于改进产品的宝贵反馈。

请参阅 Visual Studio 开发人员社区网站上的问题 "XLS1106 on virgin C# WPF .Net application"

在没有设置任何数据绑定的最简单的应用程序中,不需要设置数据上下文,并且可以安全地忽略给出的警告。

请注意,对于实际应用程序,您应该不要遵循上述评论的建议,告诉您将 DataContext = this; 添加到窗口的构造函数中。编写正确的视图模型对象类型,并创建一个实例以设置为您的 DataContext 引用。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...