Esiste un modo per rimuovere (eliminare) tutte le immagini (bambini) aggiunte a Canvas
in C# (in WFP)?Elimina tutte le immagini aggiunte alla tela
16
A
risposta
35
Vuoi dire che vuoi solo rimuovere tutti gli elementi figlio?
canvas.Children.Clear();
sembra che dovrebbe fare il lavoro.
EDIT: Se solo desidera rimuovere le Image
elementi, è possibile utilizzare:
var images = canvas.Children.OfType<Image>().ToList();
foreach (var image in images)
{
canvas.Children.Remove(image);
}
Questo presuppone tutte le immagini sono diretti elementi figli anche se - se si desidera rimuovere Image
elementi sotto altri elementi, diventa più complicato.
6
Poiché la raccolta di elementi secondari di una tela è una UIElementCollection e ci sono molti altri controlli che utilizzano questo tipo di raccolta, è possibile aggiungere a tutti il metodo di rimozione con un metodo di estensione.
public static class CanvasExtensions
{
/// <summary>
/// Removes all instances of a type of object from the children collection.
/// </summary>
/// <typeparam name="T">The type of object you want to remove.</typeparam>
/// <param name="targetCollection">A reference to the canvas you want items removed from.</param>
public static void Remove<T>(this UIElementCollection targetCollection)
{
// This will loop to the end of the children collection.
int index = 0;
// Loop over every element in the children collection.
while (index < targetCollection.Count)
{
// Remove the item if it's of type T
if (targetCollection[index] is T)
targetCollection.RemoveAt(index);
else
index++;
}
}
}
Quando questa classe è presente si può semplicemente rimuovere tutte le immagini (o qualsiasi altro tipo di oggetto) con la linea.
testCanvas.Children.Remove<Image>();
Problemi correlati
- 1. Disegna le immagini su una tela
- 2. Rimuovi tutte le immagini
- 3. Le immagini aggiunte ad AnimationDrawable perdono programmaticamente memoria
- 4. Seleziona tutte le immagini PNG
- 5. Elimina tutte le righe nella tabella
- 6. Elimina tutte le stored procedure contemporaneamente
- 7. Elimina tutte le righe duplicate Excel vba
- 8. Android - Elimina tutte le attività al logout
- 9. Immagini associate alle immagini aggiunte ai file resx utilizzando XAML
- 10. selezionare tutte le immagini utilizzando Asp.Net C#
- 11. test se tutte le immagini sono caricate
- 12. Ottenere tutte le immagini dalla cartella locale
- 13. Elenco Android tutte le immagini disponibili
- 14. Carica tutte le immagini da una directory
- 15. jQuery dissolvenza tutte le altre immagini
- 16. jquery div quando tutte le immagini caricate
- 17. Ricevi tutte le immagini url da stringa
- 18. Disegna una tela Android su tutte le applicazioni?
- 19. QMessageBox elimina alla chiusura
- 20. Più immagini non caricate su tela
- 21. Come si preparano le immagini per tutte le risoluzioni Android?
- 22. Elimina tutte le voci in un elenco Redis
- 23. Elimina tutte le righe da una tabella, genera nullpointer
- 24. Elimina tutte le tabelle tranne una in MySql
- 25. Elimina in modo ricorsivo tutte le cartelle che iniziano con
- 26. elimina tutte le connessioni utente in SQL Azure
- 27. Elimina dati da tutte le tabelle in MYSQL
- 28. Aggiungere nuovi contesti alla tela oggetti
- 29. allegare eventi della tastiera alla tela HTML5
- 30. Facebook API: Ottieni tutte le immagini del profilo