2011-07-20 7 views
7

Programlı olarak bir DataGrid yaratıyorum ve değişken olacak satır yüksekliğine ihtiyacım var, böylece çok sayıda satır içeren satırların ek satırları sığdırmak için yüksek bir yüksekliğe sahip olması gerekir.Değişken satır yükseklikleri ile WPF DataGrid

RowHeight özelliğini kodda ayarlamayı denedim, ancak bu sabit bir değer gerektirir. RowHeight'ı ayrılmadan bırakırsam, metin sığmazsa genişlemeyen isteğe bağlı bir değer kullanır.

Ayrıca DataGrid içeriklerimin ölçeklenebilir olmasını isterim, böylece DataGrid hücreleri yeniden boyutlandırırsa, hücre içindeki yazı tipi de dahil olmak üzere yeniden boyutlandırılır. Bunun için bir Viewbox kullanabilirdim, ancak Viewbox'taki metne sığmayacak kadar fazla sorun yaşamadım, metni metne sığacak şekilde genişletir/genişletir.

Yeniden boyutlandırmadaki tüm satır ve sütunları gözden geçirip yükseklik özelliğini el ile ayarlamanız gerekebilir.

cevap

7

bu deneyin:

sizin Pencere Yapıcıda

yapın: Tom bu soruna

dataGrid.RowHeight = double.NaN; 
+0

Bunu kod arkasında nasıl yaparım. DataGridView görmüyor. DataGrid myDataGrid = yeni DataGrid(); // myDataGrid parentGrid.Children.Add (myDataGrid) öğelerini özelleştirmek için gerekenleri yapın; – WPFNewbie

+0

Bunu kod arkasında yapmak zorunda değilsiniz. Tasarım modundayken DataGridView'ınızı tıklayın, özellikler penceresine gidin, AutoSizeRowsMode'u arayın ve orada ayarlayın. –

+0

Aldığım tek şey AutoGenerateColumns'tır, ancak bu DataGrid üzerindedir. DataGridView tanınmadığını söyledi. – WPFNewbie

8

Güzel cevap - Az önce çok yararlı oldu. Geride kodu olmadan Xaml tamamen bu modernleşmek için isterseniz, RowHeight="{x:Static sys:Double.NaN}"

burada tanınan 'sys' ad almak için, en xmlns beyanlarına xmlns:sys="clr-namespace:System;assembly=mscorlib" eklemek gerekir sizin DataGrid bildiriminde aşağıdaki özellik ekleyebilir Xaml dosyanızın en üstünde.

+0

XAML sürümünü sağladığınız için teşekkürler @pandrew. Oldukça iyi çalışıyor. – Alex