2010-04-05 26 views
5

DataSet'e bağlı bir DataGridView var. DateCreated, Weight, DateUsed sütunlarına sahiptir. Bu üç sütun, neredeyse tam ekran olan DataGridView üzerinde çok fazla yer kaplamıyor. Bu sütunların ikinci bir grubu desteklemek için yeterince geniş olması durumunda, bu sütunların en üste geri sarılması mümkün mü? Böylece başlığa göre DateCreated, Weight, DateUsed, DateCreated, Weight, DateUsed öğelerini okurdu. Sonra bir satır tıklandığında, altıda değil, sadece 3 hücre vurgulanır. Bu işlevselliği sağlayabilecek bir şey var mı?Çok "sütun" DataGridView C#

+1

Windows Forms veya ASP.NET? –

+0

Windows Forms C# – Wesley

cevap

2

Kutunun dışında böyle bir şey bilmiyorum.

Bu efekti kendiniz yaratabilirsiniz. Gerçek verileri verilerin sunumundan ayırmanız gerekir. Izgara satırı başına tek bir DataRow yerine, bunları tek bir satırda birden fazla satır göstermek için birleştirmeniz gerekir.

  • sütunlar görünür
  • ekstra ile yeni bir DataTable kurmak olacağını kaç datarows belirleyin sıralar
  • sayısına DataGridView'in genişliğini karşılaştırın:

    Yani yardımcı yöntemi şu yapabilir vb DateCreated1, Ağırlık1, DateUsed1, DateCreated2, ağırlığı 2, DateUsed2,

  • : kolon, her sütun
    • Örnek göstermek için ayarlar Kullanıcıların verileri sıralayabilirsiniz:
    orijinal DataSet
  • Bind yeni bir tablo

Bazı hususları ile DataGridView ile DataTable doldurun? Eğer öyleyse, bunu kendiniz yazmanız gerekir.

Bu görünümü kullanarak yeni satır ekleyebilmeniz gerekiyor mu? Bu bakış açısı ile çok zor geliyor.

+0

Hayır, kullanıcılar satırları sıralayamaz, ekleyemez veya silemez. Girdiniz için teşekkürler. Tam olarak aradığım şey olmamasına rağmen, bu benim gitmem gereken yol gibi görünüyor. – Wesley

0

Tam olarak ne demek istediğini anlamak oldukça zor ama eminim ki, JS'nin işlevselliği, tarayıcı/ekran genişliğini ve genişliğini hesaplamak ve DataGridView'ı buna göre ayarlamak. "Td" hücre genişliklerini ayarlama konusunda çok az sorun yaşayabilirsiniz, bu yüzden CSS sağlayıcılarına geçiş yapmak ve div ve span gibi bir seçenek oluşturmak gibi bir seçenek olabilir.

+0

Bu bir web uygulaması değil, değirmen Windows Forms uygulamasının sadece standart çalıştırması. – Wesley

0

Nezaket olabilir ama sadece iki DGV'yi yan yana sabitleyin, sol DGV'nin dikey kaydırma çubuğunu kapatın, her bir DGV'yi verilerin yarısına bağlayın ve her ikisini de sağdaki DGV kaydırma çubuğuyla kontrol edin.

Bunun dışında, istediğimi yapmak için tek bir DGV almak için biraz kodlamaya ihtiyacınız olduğunu düşünüyorum.

1

Nisan ayında bu soruyu gönderdiğinizi fark ettim ve muhtemelen bir çözüm buldunuz ya da başka bir şeye geçtiniz. Ancak, son zamanlarda açıkladığınız sadece ne temelde yapan bir denetim yazmış ve burada BitBucket dan serbestçe indirebilirsiniz: İlginizi çekiyorsa

https://bitbucket.org/dtao/taocontrols/downloads

Screenshot of SplitDataGridView control

, SplitDataGridView kontrol a vermek vurdun ve bana ne düşündüğünü söyle.