Я использую infragistics webcombo
с typeahead suggest
.
Проблема в том, что я могу достичь WebCombo1_InitializeDataSource
с помощью xmlReq
, но данные не отображаются в webcombo
.
Ниже приведен фрагмент кода, который я использую:
<igcmbo:WebCombo ID="WebCombo1" runat="server" EnableXmlHTTP="True" Editable="True"
ComboTypeAhead="Suggest">
<Columns>
<ClientSideEvents EditKeyUp="WebCombo1_EditKeyUp">
</ClientSideEvents>
</igcmbo:WebCombo>
Функция Javascript:
function WebCombo1_EditKeyUp(webComboId,newValue,keyCode)
{
var oWebCombo1=igcmbo_getComboById(webComboId)
xmlReq = null;
if(window.XMLHttpRequest) xmlReq = new XMLHttpRequest();
else if(window.ActiveXObject) xmlReq = new ActiveXObject("Microsoft.XMLHTTP");
var search=newValue&&newValue.length&&newValue.length>0?newValue:"";
xmlReq.open("GET","ActivityManagement.aspx?searchString="+search,true);
xmlReq.send(null);
}
Код:
void WebCombo1_InitializeDataSource(object sender, Infragistics.WebUI.WebCombo.WebComboEventArgs e)
{
string str = "";
if (this.Request.QueryString["searchString"] != null)
{
str = this.Request.QueryString["searchString"].ToUpper();
}
else str = "00";
DataTable dtProducts = OperationsDataAccess.GetProductList(str);
string rowFilter = "DeleteFlag = 0";
dtProducts.DefaultView.RowFilter = rowFilter;
WebCombo1.DataSource = dtProducts.DefaultView;
WebCombo1.DataTextField = "Name";
WebCombo1.DataValueField = "Id";
WebCombo1.DataBind();
WebCombo1.DropDownLayout.RowSelectors = RowSelectors.No;
}