ecco cosa vorrei fare. Ricevo un elenco di oggetti da un database e associo questo elenco a un controllo ListBox. I ListBoxItem sono costituiti da una casella di testo e un pulsante. Ecco cosa mi è venuto in mente. Fino a questo punto funziona come previsto. L'oggetto ha un numero di Proprietà come ID, Nome. Se clicco sul pulsante nella ListBoxItem l'articolo dovrebbe essere cancellata dalla casella di riepilogo e anche dal database ...WPF - Come ottengo un oggetto associato a un oggetto ListBoxItem
<ListBox x:Name="taglistBox">
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<ContentPresenter HorizontalAlignment="Stretch"/>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="Tag" Value="{Binding TagSelf}"></Setter>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid HorizontalAlignment="Stretch">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Button Grid.Column="0" Name="btTag" VerticalAlignment="Center" Click="btTag_Click" HorizontalAlignment="Left">
<Image Width="16" Height="16" Source="/WpfApplication1;component/Resources/104.png"/>
</Button>
<TextBlock Name="tbtagBoxTagItem" Margin="5" Grid.Column="1" Text="{Binding Name}" VerticalAlignment="Center" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Il Textblock.Text è destinata a object.Name e il ListBoxItem.Tag di opporsi. TagSelf (che è solo una copia dell'oggetto stesso).
Ora le mie domande
Se si fa clic sul pulsante nella ListBoxItem Come faccio ad avere il ListBoxItem e l'oggetto legato ad indietro. Per poter cancellare l'oggetto dal database, devo recuperarlo in qualche modo. Ho provato qualcosa come
ListBoxItem lbi1 =
(ListBoxItem) (taglistBox.ItemContainerGenerator.ContainerFromItem (taglistBox.Items.CurrentItem)); ObjectInQuestion t = (ObjectInQuestion) lbi1.Tag;C'è un modo per aggiornare automaticamente il contenuto del ListBox se la risorsa Item cambia? In questo momento lo sto raggiungendo per
taglistBox.ItemsSource = null;
taglistBox.ItemsSource = ObjectInQuestion;
Apprezzerei tutto l'aiuto che potete dare: D Grazie in anticipo