私は何かを逃したかもしれませんが、私はすでにこれで頭を打ちました。
CollectionViewSourceを定義しました:
<CollectionViewSource x:Key="packagesViewSource" d:DesignSource="{d:DesignInstance my:Package, CreateList=True}" />
およびリストボックス:
<ListBox Name="lstbPackages"
SelectionChanged="lstbPackages_SelectionChanged"
ItemsSource="{Binding Source={StaticResource packagesViewSource}}"
DisplayMemberPath="Name"
SelectedValue="{Binding Path=PackageId, UpdateSourceTrigger=Explicit}"
SelectedItem="{Binding Path=Package}"
SelectedValuePath="IdPackage"
/>
また、コードビハインドのpackagesViewSource初期化があります。
private IQueryable<Packages> GetPackagesQuery()
{
IQueryable<Package> query = dc.PackagesList;
// Returns an ObjectQuery.
return query;
}
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
...
packagesViewSource =((System.Windows.Data.CollectionViewSource)(this.FindResource("packagesViewSource")));
queryPackages = this.GetPackagesQuery();
packagesViewSource.Source = queryPackages.ToList();
...
}
そしてライン
packagesViewSource.Source = queryPackages.ToList();
イベントを伴う
private void lstbPackages_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
...
}
そしてあなたが推測できるように
lstbPackages.SelectedItem != null
そこの。
私は何を間違えますか?