Ich habe eine TreeView mit Knoten, wenn ich also auf einen der Knoten klicke, werde ich die ListBox mit Elementen aktualisieren, die an eine Observable Collection gebunden sind, was gut funktioniert. Als nächstes, wenn ich auf einen anderen Knoten in meiner Baumansicht klicke, muss ich die ListBox mit anderen Daten aktualisieren (was auch eine Obsv.Collection ist). Irgendwelche Ideen, wie man damit fortfährt?Aktualisieren der ListBox Items
<Resources>
<DataTemplate x:Key="clipsource">
<StackPanel>
<Image Name="img" Width="125" Height="70" Margin="1,0" Source="{Binding Path=Path, Converter= {x:Static l:UriToThumbnailConverter.Instance}}"/>
<TextBlock FlowDirection="LeftToRight" FontFamily="Arial" FontSize="12" Text="{Binding Path = DisplayClipName}"/>
</StackPanel>
</DataTemplate>
</Resources>
<Grid Height="Auto" Grid.Column="2" VerticalAlignment="Stretch" x:Name="RightPane_grid" Margin="2,0,0,0" KeyboardNavigation.DirectionalNavigation="None">
<Grid.RowDefinitions>
<RowDefinition Height="21.205"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Rectangle Fill="#FF232323" Stroke="#FF000000" RadiusX="3" RadiusY="3" Margin="0,0,0,0" x:Name="Right_Pane_bkg" Grid.ColumnSpan="1" Grid.RowSpan="2" KeyboardNavigation.DirectionalNavigation="None"/>
<ListBox Name="ListBox1" SelectionMode="Extended" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Auto" Grid.Row="0" Background="#FF3B3B3B" Margin="2,25,2,2" ItemsSource="{Binding}" ItemTemplate="{StaticResource clipsource}">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="IsSelected" Value="{Binding Path=IsSelected, Mode=TwoWay}"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
</Grid>
-Code Behind:
private void Handle_Click1(object sender, MouseButtonEventArgs e) // tree view Item
{
ListBox1.DataContext = Clips Items;
// Clips Items is an Obs v. Collection
}
habe ich eine andere Obs v Sammlung noch Gegenstände, die ich habe es auf dem Listenfeld gebunden
eine andere Ansicht zu zeigen
Ich sehe, Sie versuchen, die XAML als Kommentar einfügen. Sie können Ihre Frage bearbeiten. put that there –
Können Sie den Code anzeigen, der die Listbox beim ersten Klick des Knotens füllt? – Steve
Grundlegende Idee: Datadind die ListBox.ItemsSource an die SelectedItem-Eigenschaft der TreeView. –