Bir .NET ListView'daki tüm satırların dolgularını (veya satır yüksekliğini) değiştirmenin bir yolu yok gibi görünüyor. Hiç kimse şık bir kesmek var mı?. NET Liste Görünümü satır dolgulama
2
A
cevap
3
Bir geçici çözüm, öğelerin olmasını istediğiniz kadar uzun olan bir ImageList kullanmaktır. Sadece boş bir resmi arka plan rengiyle doldurun. Yatay olarak fazla yer kaplamamak için görüntüyü 1 genişlikte bile yapabilirsiniz.
8
Bu gönderi epeyce eskidir, ancak eğer en iyi seçeneği bulamadıysanız, yardımcı olabilecek bir blog post var, bu LVM_SETICONSPACING kullanımını içeriyor. bloguma göre
, Başlangıçta
, eklemek gerekir:
using System.Runtime.InteropServices;
İleri, DLL ithal etmek gerekir, sen SendMessage'i yararlanmak, böylece için ListView parametrelerini değiştirin. Bu işlem tamamlandıktan sonra
[DllImport("user32.dll")]
public static extern int SendMessage(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);
aşağıdaki iki işlevi oluşturun:
public int MakeLong(short lowPart, short highPart)
{
return (int)(((ushort)lowPart) | (uint)(highPart << 16));
}
public void ListViewItem_SetSpacing(ListView listview, short leftPadding, short topPadding)
{
const int LVM_FIRST = 0x1000;
const int LVM_SETICONSPACING = LVM_FIRST + 53;
SendMessage(listview.Handle, LVM_SETICONSPACING, IntPtr.Zero, (IntPtr)MakeLong(leftPadding, topPadding));
}
Sonra sadece ListView geçmek işlevini kullanın ve değerleri ayarlamak için. Örnekte, 64 piksel görüntü genişliğidir ve 32 piksel yatay boşluk/dolgu, 100 piksel resim yüksekliğidir ve 16 piksel dikey aralık/dolgu işlemidir ve her iki parametre de en az 4 piksel gerektirir.
ListViewItem_SetSpacing(this.listView1, 64 + 32, 100 + 16);
İlgili konular
- 1. liste görünümü
- 2. Tüm liste Görünümü (satırlar)
- 3. Liste görünümü için maksimum görünen satır sayısını ayarlayın
- 4. oto liste görünümü seçili satır nasıl güncellenir sonra
- 5. Statik Başlıklı Alaşım Liste Görünümü
- 6. liste görünümü C#
- 7. Boş Liste Görünümü
- 8. Başlıksız Liste Görünümü
- 9. Applauze liste görünümü gibi
- 10. Genişletilebilir liste görünümü
- 11. Liste görünümü bellek kullanımı
- 12. BottomSheet'de Liste Görünümü
- 13. Json verileri Liste Görünümü
- 14. Android - Mesaj görünümü olarak ters liste görünümü
- 15. Bir çeşit tamsayı liste görünümü biçiminde
- 16. Android: Yukarıdaki resimde liste görünümü
- 17. Ben gerçek "CheckBox'ları" = bir liste görünümü var nasıl .net 3.5 windows formları olarak .net 3.5
- 18. Liste Görünümü C# seçili kal
- 19. ListeYeni liste görünümü nasıl alınır?
- 20. Android liste görünümü OnItemClickListener - 1
- 21. Android Liste görünümü dizisi yanlış
- 22. Xamarin.Forms bir liste görünümü doldurun
- 23. Hareketli liste görünümü veri değişimi
- 24. JavaFX - Özel Liste Görünümü Görünüm
- 25. Liste görünümü kaydırma hatası 5.1
- 26. Çoktan Seçmeli Aranabilir Liste Görünümü
- 27. Liste görünümü konumunu nasıl karıştırırsınız?
- 28. Android AppBarLayout örtüşen liste görünümü
- 29. liste görünümü kaydırma UI aksaklık
- 30. Liste görünümü performansını optimize edin
Lütfen alakalı içeriği blog yayınınızda yanıtınıza gönderin. –
'LVM_SETICONSPACING 'sadece Simge görünümünde ListViews için geçerlidir. Satır dolgusunu değiştirmek için Details (Görünüm) görünümünde eşdeğer bir şey yapmanın herhangi bir yolu (@Joel Lucsy'nin bir görüntüleyici ile yapılabileceği gibi satır yüksekliği değil)? –