簡體   English   中英

asp.net,C#自動完成擴展器

[英]asp.net, c# autocomplete extender

1)我有一個文本框可輸入該項目的首字母,以及2)單擊搜索按鈕,單擊該按鈕時將出現一個列表框,顯示匹配的搜索。 3)我想將此轉換為自動完成擴展程序,並要刪除列表框。 以下是我嘗試過的代碼:

    [System.Web.Script.Services.ScriptMethod()]
    [System.Web.Services.WebMethod]
    public List<string> OnSearchEntity(string prefixText, int count)
    {
        List<string> outsideEntities = new List<string>();
        DataTable dtOutsideEntity = COIOrganizationCollection.GetOrganizations(prefixText);

        for (int i = 0; i < dtOutsideEntity.Rows.Count; i++)
        {
            outsideEntities.Add(dtOutsideEntity.Rows[i]["Name"].ToString());
        }
        return outsideEntities;
    }

但它顯示一個錯誤:

錯誤82'OnSearchEntity'沒有重載匹配代理'System.Web.UI.ImageClickEventHandler'

我也嘗試過更改參數,即。

    public List<string> OnSearchEntity(object sender, ImageClickEventArgs e)
    {
        List<string> outsideEntities = new List<string>();
 DataTable dtOutsideEntity =COIOrganizationCollection.GetOrganizations(entityName.Text.Trim());

        for (int i = 0; i < dtOutsideEntity.Rows.Count; i++)
        {
            outsideEntities.Add(dtOutsideEntity.Rows[i]["Name"].ToString());
        }
        return outsideEntities;
    }

它再次給出一個錯誤:錯誤83'System.Collections.Generic.List具有錯誤的返回類型

請提供幫助,或提出正確的轉換方法。

使用Lambda表達式將outsideEntities列表傳遞到參數中,一旦觸發事件,它將自動更改。 無需返回此列表。 您可以使用此示例並將其更改為您的活動

    lnkSynEvent.Click += 
               new EventHandler((s,e)=>lnkSynEvent_Click(s, e, your_parameter));

請注意,同一事件可能多次被執行,即使事件僅被觸發一次

該錯誤是因為:我在單擊事件上使用了圖像按鈕,並且對於同一功能,我將其用於兩種不同類型的參數,即。

onsearch(sender,eventargs e)onsearch(string a,int count)

就我而言,我可以刪除按鈕,因為我將其轉換為自動完成擴展器,因此不需要搜索按鈕。

感謝您的幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM