Como: Usuário AutoCompleteextender em um UserControl (ASCX) e coloque o serviço de serviço em seu código-behind

StackOverflow https://stackoverflow.com/questions/1114957

Pergunta

Criei um AutoCompleteextender em uma caixa de texto que reside em um UserControl (arquivo control.ascx).

Não quero criar uma classe separada para o método da Web, prefiro colocá -lo no próprio arquivo de código (control.ascx.cs).

Há algum jeito?

Eu tentei com sucesso uma vez atrás, colocando o método no mesmo página Mas era uma página e, se o ServicePath Property não estiver definido, ela é automaticamente encaminhada para a página, por isso funcionou, agora, pois é um controle do usuário, não é mesmo quando especifique explicitamente o caminho.

Foi útil?

Solução

Na verdade, você pode manter o método da Web em .aspx, enquanto outro código relacionado ao Extender AutoComplet pode residir no .ascx. Funciona bem.

Outras dicas

O AutoCompleteextender não funciona dentro de um UserControl neste momento. Citando Dino Esposito na revista MSDN fevereiro de 2007: -

Um método de página chamável é um método público estático (ou compartilhado no visual básico.net) definido na classe CodeBehind e decorado com o mesmo atributo webMethod usado para métodos de serviço da Web. Atualmente, Isso é limitado às páginas ASPX--BOTH ENline e CodeBehind Code-Mas pode ser estendido no futuro aos controles do usuário e controles personalizados.

Minha experiência recente mostra que isso ainda é verdadeiro.

Receio que você fique implementando o método como um serviço da web ou movendo a funcionalidade de volta para a página.

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