gpt4 book ai didi

.net - 回归问题: XamlCompilation error Value cannot be null,参数名称:方​​法

转载 作者:行者123 更新时间:2023-12-02 20:49:58 25 4
gpt4 key购买 nike

我搜索了所以找到this问题,但答案对我不起作用,所以问题仍然存在。

就我个人而言,我认为该问题可能与某些配置“事物”有关,但我不知道从哪里开始解决它。据我所知,我没有改变任何不正常的配置设置(只是使用标准的新项目方法)。以下是我的问题的一些详细信息:

恰好今天是第一次尝试 XamlC 功能。首先,我尝试了 App.cs 文件中的程序集级别属性:

[assembly: XamlCompilation(XamlCompilationOptions.Compile)]

编译后,我收到了一堆完全相同的错误。我还在使用 TemplateControl 的任何页面上遇到了不同的错误。因此,我将其从程序集级别上拉下来,并将单个类级别属性放在一页上,但它仍然失败并出现相同的错误:

Value cannot be null.
Parameter name: method

我在 Stackoverflow 上闲逛,发现大约一年前有人遇到了同样的问题(此处),但他们说他们通过将 Xam Forms 升级到最新版本来解决这个问题。由于我使用的是最新的稳定版本,因此我无处可去。

我在我的应用程序中的多个页面上尝试了这个类级属性,但发现它只在我的整个应用程序中的单个页面上工作...恰好这个页面在 XAML 标记中的绑定(bind)为零。我想知道是否引入了导致其爆炸的错误。

页面标记不起作用:

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Prepify.App.Pages.MainMenu"
xmlns:controls="clr-namespace:ImageCircle.Forms.Plugin.Abstractions;assembly=ImageCircle.Forms.Plugin.Abstractions"
BackgroundColor="White"
Title="Menu">
<StackLayout VerticalOptions="FillAndExpand">
<ListView
Header="{Binding .}"
SeparatorColor="{StaticResource dividerColor}"
HasUnevenRows="True"
ItemSelected="AppMenu_OnItemSelected"
ItemTapped="AppMenu_OnItemTapped"
ItemsSource="{Binding Items}"
x:Name="appMenu">

<ListView.HeaderTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="10"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="30"/>
<ColumnDefinition Width="10"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="80"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
</Grid.RowDefinitions>

<BoxView Grid.ColumnSpan="4" Grid.RowSpan="4" BackgroundColor="{StaticResource grayDark}"/>
<controls:CircleImage Grid.Column="1" Grid.Row="1" HorizontalOptions="Start" VerticalOptions="End" Source="{Binding ProfileImageUrl}" WidthRequest="75" HeightRequest="75"/>
<Label Grid.Column="1" Grid.Row="2" Text="{Binding FullName}"/>
<ActivityIndicator Grid.Column="2" Grid.Row="2" IsVisible="{Binding IsBusy}" IsRunning="{Binding IsBusy}" Color="White" WidthRequest="20" HeightRequest="20" VerticalOptions="Center" />

</Grid>
</DataTemplate>
</ListView.HeaderTemplate>
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout Orientation="Horizontal" >
<StackLayout.Padding>
<OnPlatform x:TypeArguments="Thickness" Android="15,15,15,15" iOS="25,12,15,12" />
</StackLayout.Padding>
<Image Source="{Binding Icon}" VerticalOptions="Center" WidthRequest="20" HeightRequest="20"/>
<Image WidthRequest="20"/>
<Label Text="{Binding Label}" VerticalOptions="Center" TextColor="{Binding LabelColor}" Style="{DynamicResource ListItemTextStyle}"/>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
</ContentPage>

唯一有效页面的标记(注意,任何地方都没有绑定(bind)):

<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Prepify.App.Pages.Root"
xmlns:pages="clr-namespace:Prepify.App.Pages;assembly=Prepify.App"
MasterBehavior="Popover"
Title="Make Preparedness Easy">

<MasterDetailPage.Master>
<pages:MainMenu/>
</MasterDetailPage.Master>

</MasterDetailPage>

我正在使用发布此问题时的所有最新内容。 Visual Studio 2015Xamarin.Forms 2.3.3.193Xamarin.VS 4.3.0.784

最佳答案

对于一个包含一页(xaml + cs)和一个 ViewModel 的项目,我遇到了完全相同的问题。我更改了一行,保存了机会,但它不再构建,也出现此错误:

Value cannot be null.
Parameter name: method

就我而言,更改软件包版本修复了它。只需右键单击您的项目>打开“属性”>打开左侧的“包”选项卡>并增加包版本号。当然,我对我的解决方案进行了很多清理和重建。

这对我有用,但我必须承认我刚刚开始使用 Xamarin,所以我真的不知道我在做什么:D也许这对任何人都有帮助。

哦,也许重要的是:我在 Visual Studio 2017 中使用 Xamarin 3.2.0.839982

关于.net - 回归问题: XamlCompilation error Value cannot be null,参数名称:方​​法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42546135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com