Ben weer aan het prutsen met silverlight. Heb men game of life simulator omgezet naar silverlight, doch de layout in internet explorer is niet gelijk aan de layout in opera firefox.
Wat doe ik? Ik maak programatorisch een grid aan met de hoeveelheid rijen en kolommen die ik nodig heb voor mijn simulator. In ieder van deze cellen steek ik een Rectangle die van kleur verandert naargelang de status van de cell. Deze rectangle geef ik overal een margin van 0 mee, waarmee ik dus aangeef dat hij de cell volledig moet vullen.
In code is dit eenvoudigweg:
Vergelijkingsscreenshot:

Aanvankelijk test ik in opera en dit werkt netjes (boel draait niet 100% vlot, maar daar moet threading in de toekomst voor zorgen). Met de margin op 0 krijg ik een groot solide vlak en wanneer ik de margin hoger zet kan ik ook netjes gescheiden cells krijgen.
Wat zie ik echter in internet explorer 8? Zelfs met de margin op 0 zal hij altijd 1 pixel vrijlaten tussen de verschillende kolommen....tot dusver de cross-browser compatibiliteit van Silverlight
.
Linkje naar de app voor wie het zelf wil testen. Ben beniewd of hier een zinnige verklaring voor is
.
Wat doe ik? Ik maak programatorisch een grid aan met de hoeveelheid rijen en kolommen die ik nodig heb voor mijn simulator. In ieder van deze cellen steek ik een Rectangle die van kleur verandert naargelang de status van de cell. Deze rectangle geef ik overal een margin van 0 mee, waarmee ik dus aangeef dat hij de cell volledig moet vullen.
In code is dit eenvoudigweg:
C#:
1
2
3
4
5
6
| Rectangle square = new Rectangle { Width = cellSize, Height = cellSize, Fill = inactiveBrush, Margin = new Thickness(0) }; square.SetValue(Grid.RowProperty, i); square.SetValue(Grid.ColumnProperty, j); square.Tag = new Point(j, i); square.MouseLeftButtonUp += new MouseButtonEventHandler(square_MouseLeftButtonUp); grid.Children.Add(square); |
Vergelijkingsscreenshot:

Aanvankelijk test ik in opera en dit werkt netjes (boel draait niet 100% vlot, maar daar moet threading in de toekomst voor zorgen). Met de margin op 0 krijg ik een groot solide vlak en wanneer ik de margin hoger zet kan ik ook netjes gescheiden cells krijgen.
Wat zie ik echter in internet explorer 8? Zelfs met de margin op 0 zal hij altijd 1 pixel vrijlaten tussen de verschillende kolommen....tot dusver de cross-browser compatibiliteit van Silverlight

Linkje naar de app voor wie het zelf wil testen. Ben beniewd of hier een zinnige verklaring voor is
'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind.' - Pratchett.