2008-10-28 12 views
5

Veri kaynağı, özel nesnelerin genel listesine ayarlanmış bir DataGridView'ım var. Kullanıcı değerleri değiştirdikçe (bu durumda bir onay kutusunu işaretler/işaretini kaldırır), nesnenin altında yatan boole alanı değişir.Bağlı bir DataGridView'da yapılan değişiklikleri nasıl geri yüklersiniz?

Bağlama için Listenin bir "kopyasını" oluşturmalı, ardından kullanıcı yüklüyorsa el ile güncelleştirmeli, (eğer öyleyse bu kopyasını nasıl oluşturursunuz) veya veri kaynağında yapılan değişiklikleri geri almanın basit bir yolu var mı? .

bunu, bu tahmin gerçek veri kaynağı, sen ızgaraya bağlı ettik sadece listeyi güncelleyerek değil için söylüyorsun Teknik sürece

cevap

1

(C# kullanıyorum). Bu listeyi atmak ve kaynağınızı yeniden eski haline getirmek için kaynağınızı yeniden sorgulamakta hâlâ özgürsünüz.

Kullanıcıların, gerçek veri kaynağına geri döndürdükleri tüm değişiklikleri gerçekleştirmeleri için bir ekleme seçeneği ekleyebilirsiniz.

Çok daha kolay ve muhtemelen bunun için daha az yoğun olacaktır. Ardından, bir güncelleme yapmadan listeyi tekrar kaynağından yenilemek ve yeniden adlandırmak için "değişiklikleri iptal et" seçeneğine veya benzer bir seçeneğe sahip olabilirsiniz.

Bu yardımcı olur umarız!

Şerefe!

+0

listemi ciltlenen formda geçiriyordum. (Bir XML dosyasından oluşturulur). Sanırım benim hatamı vurguladın. Bağlama için yeni bir Liste <> koleksiyonu oluşturmalıyım ("canlı" olanı kullanmamalı ve yalnızca kullanıcı istediğinde değişiklik yapmalıdır (Tamam). –

+0

Göndermek için gönderdiğiniz nesneyi kopyalamak için. Orijinal nesnenin bir kopyasını oluşturmak için bir kopya oluşturucu.Orada kullanım durumuna göre atayın veya atın. http://stackoverflow.com/a/6569799/384554 – PUG

İlgili konular