为什么 VS 找不到我的文件?
VS 错误图文:
严重性代码描述项目文件行抑制状态 错误 CS0246 找不到类型或命名空间名称“AudioFile”(是否缺少 using 指令或程序集引用?)重新排序 C:\Users\kloud\Documents\Visual Studio 2015\Projects\reOrder\reOrder\ReorderPage.xaml.cs 27 事件
我重新创建了该项目以查看 Visual Studio 是否在做一些我看不到/无法理解的事情,并广泛检查了正在运行的代码(正确找到项目并绑定(bind))以查看差异在哪里。但是我找不到任何线索。
编辑:我在 Windows 10 周年更新上使用 Visual Studio 2015 Community Edition。此外,在以前的项目中,VS 在查找和绑定(bind)到模型时没有问题。
完整代码如下。
重新排序页面
<Page
x:Class="reOrder.ReorderPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:reOrder"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:viewModels="using:reOrder.Models"
mc:Ignorable="d">
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<ListView Grid.Row="1"
ItemsSource="{x:Bind AudioFiles}">
<ListView.ItemTemplate>
<DataTemplate x:DataType="viewModels:AudioItem">
<StackPanel>
<TextBlock Text="{x:Bind Name}"/>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Grid>
</Page>
AudioItem 模型 (跳过使用)
namespace reOrder.Models
{
public class AudioItem
{
public string Path { get; set; }
public string Name { get; set; }
public int Duration { get; set; }
}
}
最佳答案
即使在重建解决方案后我也遇到了同样的问题。我所做的一个解决方法是在文件资源管理器中转到您的 .csproj 文件,然后在项目组标签下编辑添加:
<Compile Include="ViewModels\AudioItemModel .cs">
<DependentUpon>Reorder.xaml</DependentUpon>
</Compile>
保存并关闭它然后重建它,现在它会检测到 View 模型。
关于c# - 为什么找不到我的 ViewModel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38934781/