Ormai sono "malato" di Silverlight come tutti i miei contatti msn avranno probabilmente intuito :P
Oggi, paciugando nella creazione di un Silverlight User Control (magari scriverò di questa cosa una prossima volta) ho avuto alcuni problemi a configurare la mia pagina in modo da avere lo stesso colore di sfondo...
Sembra una stupidata, lo so, ed alla fine lo è... ma ci ho perso una buona mezz'ora, probabilmente per la conoscenza dell'ambiente che (purtroppo) è ancora scarsina.... :)
Cmq, il mio problema era dovuto al fatto che il mio file xaml contiene due canvas, il suo principale, ed un'altro che contiene il mio User Control importato da un'altro progetto (nel mio caso, un media player).
Ora, mettendo lo sfondo della pagina Black, il background del canvas Black (il canvas ha dimensione standard 640*480), il background del canvas definito dal mio usercontrol a "Black" (questo ha dimensione 800*600 quindi va oltre quello originale)... mi rimane appunto un fastidiosissimo bordo bianco tra il canvas del mio UserControl e il bordo della finestra.
Ho provato a mettere il BackGround del canvas principale a Black e levare le misure Width ed Height mettendolo a Fill.. e Sorpresa sorpresa... non cambiava nulla :)
Un rapido giro sulla Reference mi ha fatto notare che la proprietà Background _non_ viene proprio considerata se almeno uno degli attributi Width o Height non è definito... chissà poi perchè...
Cmq, gira che ti rigira, ho identificato la soluzione nel punto in cui francamente mi ero dimenticato di guardare: il JavaScript che crea il componente Silverlight nella pagina padre:
Sys.Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "100%",
height: "100%",
version: "0.95",
background: "Black",
enableHtmlAccess:true
},
events: {}
});
Qui, è bastato aggiungere una proprietà background: "Black", che prima non c'era, per avere finalmente la mia bella paginetta tutta nera :)