タイトルで述べたように、XAML で Coding4Fun ColorPicker を使用すると、この例外が発生します。
このコンポーネントへのすべての参照を削除しようとしましたが、ページは正常に読み込まれます。
コードは次のとおりです。
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<ScrollViewer>
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<phone:Pivot Grid.Row="0">
<phone:PivotItem CacheMode="{x:Null}" Header="Background">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="5*"/>
<RowDefinition/>
</Grid.RowDefinitions>
<c4f:ColorPicker Grid.Row="0" Grid.ColumnSpan="2"/>
<TextBlock Grid.Row="1" Grid.Column="0" Text="Opacity:"/>
<Slider Grid.Row="1" Grid.Column="1" VerticalAlignment="Center" Style="{StaticResource CustomSlider}"/>
</Grid>
</phone:PivotItem>
<phone:PivotItem CacheMode="{x:Null}" Header="Foreground">
<Grid>
<c4f:ColorPicker/>
</Grid>
</phone:PivotItem>
</phone:Pivot>
<ContentPresenter Grid.Row="1" Content="{Binding CustomSettings}"/>
</Grid>
</ScrollViewer>
</Grid>
編集: BindableAppBar
ColorPicker を使用する前に追加しましたが、例外が AppBar の行に移動しました。
外部ライブラリを使用すると例外がスローされるようです!
編集2:
例外はに依存しているようApplicationState
ですが、間違って使用していません!
public Settings()
{
try
{
InitializeComponent();
DataContext = this;
}
catch (Exception e)
{
e.GetType();
}
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
// Get the model from app's state
Model = (BasePluginModel)PhoneApplicationService.Current.State["active"];
}
InitializeComponent()
メソッドで例外がスローされState
、ページのプロパティに移動すると、次のように表示されます。
-State '((Microsoft.Phone.Controls.PhoneApplicationPage)(this)).State' が例外 'System.InvalidOperationException' System.Collections.Generic.IDictionary {System.InvalidOperationException} を生成しました
オブジェクトを展開すると、次のようになりますMessage
。
メッセージ「OnNavigatedTo と OnNavigatedFrom の間でのみ State を使用できます」文字列
コードから、適切なイベントでのみ状態を使用していることがわかります。行が同じエラーにつながるとコメントしても。このコードの何が問題になっていますか?
編集3:
これらは私が使用している名前空間です。すべて NuGet からダウンロードしました。
xmlns:c4f="clr-namespace:Coding4Fun.Toolkit.Controls;assembly=Coding4Fun.Toolkit.Controls"
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:bar="clr-namespace:BindableApplicationBar;assembly=BindableApplicationBar"