Pergunta

Eu procurei a solução para mudar a cor de fundo do controle MainMenu do Compact Framework, ea única resposta que eu encontrei é que você precisa para criar um controle personalizado. Alguém tem exemplo de código para isso?

Foi útil?

Solução

Não há nenhuma maneira de fazer isso.
Seu direito em que você provavelmente vai precisar para criar seu próprio controle.

Isso era algo que eu estava pensando em fazer de qualquer maneira para fazer o movimento aplicativo no Windows CE e Windows Mobile.
O problema com a adição de menus quando as necessidades de aplicação para trabalhar com ambos é que o menu vai para o topo da tela no Windows CE e abrange qualquer controles que possam estar lá.
Seria menos problemas a longo prazo apenas fazer um novo controle.

Outras dicas

Eu fiz algo vagamente semelhante onde eu queria lidar com a mensagem WM_EXITMENULOOP que não estava disponível como um evento no .NETCF.

A solução foi "subclasse" no menu principal, um truque MFC idade onde você substitui a função WndProc com seus próprios, lidar com quaisquer mensagens do Windows (WM_EXITMENULOOP no meu caso) e chamar a classe base WndProc para tudo o resto.

Um código de exemplo está disponível no blog de Alex Yakhnin sobre como subclasse um controle: Exemplo de subclasse uma janela em .NETCF

No seu caso você realmente ser subclasse o formulário que o MainMenu reside, e acho que WM_DRAWITEM seria a mensagem do Windows que você gostaria de lidar com você mesmo. Eu não tentei mudar a cor de fundo me, portanto, não totalmente certo de que este trabalho vontade, mas subclasse seria onde eu ia começar.

Eu tentei fazer algo semelhante um tempo atrás e descobriu que você tem que escrever o seu próprio menu; essencialmente a partir do zero. Eu desisti porque o projeto que eu estava trabalhando não poderia arcar com a despesa. Eu também descobri que OpenNETCF tem um controle de menu bastante impressionante. Eu não sei se ele está incluído em seu software livre, mas pode valer a pena olhar em.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top