AutoCompletion ASP.NET 2.0

yanis7518 Messages postés 283 Date d'inscription mercredi 7 décembre 2005 Statut Membre Dernière intervention 9 juillet 2010 - 20 févr. 2007 à 14:58
dungies Messages postés 15 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 4 janvier 2011 - 23 juin 2010 à 10:40
Salut a tous

Je souhaite créer une zone d'autoCompletion (aide à la saisie). Pour cela j'utilise une textbox et le control AutoCompleteExtender. J'ai chercher de la doc un peu partout sur le Net et des examples voila ce que ça donne

<hr />
Autocomplete.aspx

<%

@
Register
Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"

Namespace="System.Web.UI"
TagPrefix="asp" %><%

@
Register

Assembly="AjaxControlToolkit"

Namespace="AjaxControlToolkit"

TagPrefix="ajaxToolkit" %><%

@
Register
Assembly="AjaxControlToolkit"
Namespace="AjaxControlToolkit"
TagPrefix="cc1" %>
<

asp:Content
ID="Content1"
ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">

<asp:ScriptManager
ID="ScriptManager1"
runat="server"
EnablePageMethods="true"
>

</asp:ScriptManager>

<asp:TextBox
ID="TextBox1"
runat="server"></asp:TextBox>

<ajaxToolkit:AutoCompleteExtender
ID="AutoCompleteExtender2"
runat="server"

TargetControlID="TextBox1"
ServicePath="../AutoComplete.asmx"
ServiceMethod="GetValues"
MinimumPrefixLength="2"

CompletionInterval="1000"
EnableCaching="true"
CompletionSetCount="5">

</ajaxToolkit:AutoCompleteExtender></

asp:Content>

<hr />Autocomplete.asmx / Autocomplete.cs

<%

@
WebService
Language="C#"
CodeBehind="~/App_Code/AutoComplete.cs"
Class="AutoComplete" %>

using

System;
using

System.Web;
using

System.Collections;
using

System.Web.Services;
using

System.Web.Services.Protocols; 

///

<summary>///

Summary description for AutoComplete///

</summary>[

WebService(Namespace =
"http://tempuri.org/")][

WebServiceBinding(ConformsTo =
WsiProfiles.BasicProfile1_1)]
public

class
AutoComplete : System.Web.Services.
WebService {

public AutoComplete () {

//Uncomment the following line if using designed components

//InitializeComponent(); }

[

WebMethod]

public
string[] GetValues(
string PrefixText,
int count){

string[] values = {
"incomplete",
"inconsistent",
"incompatible",
"impossible",
"important",
"increment",
"include",
"impose" };

int matches = 0;

for (
int i = 0; i < values.Length; i++){

if (values[i].StartsWith(PrefixText)){

matches++;

}

}

int size =
Math.Min(matches, count);

string[] output =
new
string[size];

for (
int i = 0; i < values.Length; i++){

if (size == 0){

break;}

if (values[i].StartsWith(PrefixText)){

output[--size] = values[i];

}

}

return output;}

}

<hr />

Voila lorsque je lance mon application je n'ai aucune erreur mais ca ne marche pas quelqu'un aurai une idée

2 réponses

cs_alone boy Messages postés 1 Date d'inscription mardi 12 décembre 2006 Statut Membre Dernière intervention 25 avril 2009
25 avril 2009 à 10:55
Bonjour,
J'ai le même problème que celui que tu avais.

le contrôle autocompletion ne fonctionne pas comme il le devrait!!
Rien ne se passe et j'ai pas un message d'erreur non plus.

Je me demande si tu as trouvé une solution?

Merci
0
dungies Messages postés 15 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 4 janvier 2011
23 juin 2010 à 10:40
Bonjour,
Pour que le webservice puisse être appelé depuis asp.net il faut ajouter cette ligne :
[System.Web.Script.Services.ScriptService]
au dessus de la déclaration de la classe :
public class WebService : System.Web.Services.WebService
0
Rejoignez-nous