Xaml で単純なマスター詳細データバインディング C# WPF を実装しようとしています。左側には適切に生成されたリストボックスがあり、右側にはデータグリッドがあります。左のリストボックスをクリックすると、それに応じてデータグリッドが変更されます。現在、SelectedItem パスに問題があると考えています。誰かアドバイスをいただけますか?
public class Pipe
{
public string ID { get; set; }
public ObservableCollection<Node> nodes = new ObservableCollection<Node>();
}
public class Node
{
public int ID { get; set; }
public double Distance { get; set; }
}
ObservableCollection<Pipe> p = new ObservableCollection<Pipe>();
Pipe Class にデータを入力した後、それをバインドします
lstLines.DisplayMemberPath = "ID";
lstLines.ItemsSource = p;
今まで、すべてが正しく機能しています。次に Xaml で、次の方法でデータグリッドを Listbox の SelectedItem にバインドします。
ItemsSource="{Binding Path=SelectedItem.nodes, ElementName=lstLines, Converter={StaticResource debugConverter}}
ここに問題があります....正しいパスが見つからないため、リストの選択されたアイテムに基づいてデータグリッドが設定されます。いくつかのバリエーションを試しましたが、不足はありません。