I controlli di interoperabilità non raccolgono stili XP
Domanda
Ho creato un controllo utente Interop in VS2005. Quando il controllo utente viene mostrato all'interno di VB6, non preleva / utilizza gli stili XP (i pulsanti e le schede sembrano pulsanti / schede VB6).
Come faccio a far funzionare gli stili XP con il mio controllo mentre è in VB6?
Soluzione 2
Il file manifest funziona solo per le versioni precedenti di .net e dopo .net 1.1 è possibile attivarle a livello di codice. Ho dovuto aggiungere la riga Application.EnableVisualStyles ()
nel costruttore predefinito del controllo utente di interoperabilità.
Public Sub New()
Application.EnableVisualStyles() '-- I added this line
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
'Raise Load event
Me.OnCreateControl()
End Sub
Ecco Post di Microsoft su Application.EnableVisualStyles
che spiega tutto.
@marioh - grazie per la risposta.
Altri suggerimenti
devi aggiungere un file manifest per l'applicazione, aggiungere un file con il nome {exefilename} .exe.manifest nella stessa cartella dell'applicazione.