J'ai une grille de 5 lignes. Aux lignes 2 et 4, j'ai un DataGrid. Les autres lignes ont une hauteur fixe. Le contenu des tables dans les DataGrids est bien sûr déterminé dynamiquement, et donc leur hauteur aussi. Comme dans mon application particulière, il existe une relation entre la hauteur des deux tables, je veux ajuster le MaxHeight des deux à l'exécution. Si une table est plus longue que la MaxHeight initialement speficied, elle est supposée obtenir un ScrollBar. Mais la hauteur des deux tables ne devrait jamais être plus longue que la page du navigateur.Silverlight ajuster la hauteur DataGrid au moment de l'exécution
Maintenant, j'essayé de le faire lors de l'exécution déclenchée à un événement:
if (availableSpace - heightOfTable1 - heightOfTable2 < 0)
{
if (heightOfTable1 > heightOfTable2)
{
Table1.MaxHeight = availableSpace - heightOfTable2;
// Trigger a rerendering
Table1.ItemsSource = null;
Table1.ItemsSource = List1;
...
}
...
}
Cependant je remarquai que la ActualHeight ne change pas quand je fais cela. Le ActualHeight est maintenant plus grand que le MaxHeight spécifié au moment de l'exécution Qu'est-ce que je fais mal?