das ist mein NavigationsfensterNullpointer nachdem er in einem Navigation zurück
<NavigationWindow x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="800" Width="600" Source="Page1.xaml">
das ist meine page1
<Page x:Class="WpfApplication1.Page1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="600" d:DesignWidth="800"
Title="Page1" Name="IndexPage">
<ListView Name="myListView" ItemsSource="{Binding ElementName=IndexPage, Path=SeriesCollection}" ScrollViewer.HorizontalScrollBarVisibility="Disabled" IsSynchronizedWithCurrentItem="True" SelectionChanged="handleSelected">
<ListView.ItemsPanel >
<ItemsPanelTemplate>
<WrapPanel>
</WrapPanel>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel >
<Image Width="214" Height="317" Source="{Binding Image}"/>
<Label Content="{Binding Name}" />
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Page 2 ist nur en leer Skelett
Code hinter
namespace WpfApplication1
{
/// <summary>
/// Interaktionslogik für Page1.xaml
/// </summary>
public partial class Page1 : Page
{
private ObservableCollection<Series> _series =
new ObservableCollection<Series>();
public ObservableCollection<Series> SeriesCollection
{
get { return _series; }
}
public Page1()
{
InitializeComponent();
DirectoryInfo baseDir = new DirectoryInfo(@"C:\Serien");
DirectoryInfo[] dirs = baseDir.GetDirectories();
foreach (DirectoryInfo dir in dirs)
{
Series serie = new Series(dir);
Console.WriteLine("adding " + serie.Name);
_series.Add(serie);
}
Console.WriteLine(_series.Count);
}
public void handleSelected(object sender, RoutedEventArgs args)
{
Series currentSerie = (Series) myListView.Items.CurrentItem;
Page2 page = new Page2();
this.NavigationService.Navigate(page);
Console.WriteLine(currentSerie.Name);
Console.WriteLine(currentSerie.GetType());
Console.WriteLine(currentSerie.ToString());
}
}
}
Also klicke ich auf ein Element, um das SelectionChanged Event auszulösen, um es in SelectionChanged zu behandeln, wo ich zu Seite2 navigiere, soweit so gut.
dann benutze ich die Zurück-Taste aus dem Fenster Navigation und mit einer Nullpointer bei
this.NavigationService.Navigate(page);
ich nicht einmal wissen, warum diese Methode ausgelöst wird, stecken. Also mache ich offensichtlich etwas Dummes. Bitte sag mir was es ist. Danke für deine Zeit und deinen Lebensunterhalt.
Sind Sie sicher, dass Sie die Ausnahme dort und nicht in der nächsten Zeile erhalten? 'CurrentItem' und daher' currentSerie' könnten durchaus 'null' sein. – Clemens
@Clemens Nun, das ist, was VS2010 mir erzählt. Auch ich habe versucht, es ohne die Console-Ausgabe auszuführen und habe den gleichen Fehler – braunbaer
Und was genau ist "null" dort? Hast du den Stack-Trace? – Clemens