2008-10-14 3 views
1

Я создал пользовательский элемент управления Interop в VS2005. Когда пользовательский элемент управления отображается внутри VB6, он не выбирает/не использует стили XP (кнопки и вкладки выглядят как кнопки/вкладки VB6).Interop Controls не подбирает XP Styles

Как мне получить стили XP для работы с моим элементом управления, находясь в VB6?

ответ

1

Файл манифеста работает только для более ранних версий .net и после .net 1.1, вы можете активировать их программно. Я должен был добавить строку Application.EnableVisualStyles() в конструктор по умолчанию пользовательского элемента управления interop.

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 

Это Microsoft's post on Application.EnableVisualStyles, который объясняет все.


@marioh - спасибо за отклик.

1

вам необходимо добавить файл манифеста для приложения, добавить файл с именем {exefilename} .exe.manifest в ту же папку, что и приложение.

+0

Это напоминает мне старый сувенир о VB6 и XP :) – 2008-10-14 22:38:46