无法保留Telerik下拉列表在回发时列出选定的值

CRM*_*Guy 2 asp.net telerik

以下是我的代码.我正在使用telerik下拉列表..但是发生的事情是,从下拉列表中选择一个值后,当页面被回发时...我选择的值正在出现.

<telerik:RadComboBox ID="cmbSavedSearch" runat="server"
            AutoPostBack="true"
            AppendDataBoundItems="True" 
            EnableItemCaching="True" 
            DataSourceID="odsSavedSearch" 
            DataTextField="User_Search_Nm" 
            DataValueField="User_Search_Id"
            OnSelectedIndexChanged="SavedSearchSelected"
            Width="200px"
            EnableViewState="true" 

            >
            <Items>
                <telerik:RadComboBoxItem Text="Please Select..." Value="0" />
            </Items>
        </telerik:RadComboBox> 

 protected void SavedSearchSelected(object source, EventArgs e)
      {
      try
      {
        SavedSearchId = Conversion.ToInt32Default(cmbSavedSearch.SelectedValue, 0);
        cmbSavedSearch.FindItemByValue("0").Selected = true;
        cmbSubVessel.Items.Clear();            
    }
    catch (Exception ex)
    {
        bool rethrow = 
       ExceptionPolicy.HandleException   ex,CurrentSite.Instance.Error_UI_Policy_Name);
        NameValueCollection errDetail = new NameValueCollection(1);
        errDetail.Add("UserErrorMessage", UserErrorMessage);
        ExceptionHandler handler = new ExceptionHandler(ex, errDetail);
    }
Run Code Online (Sandbox Code Playgroud)

}

Fra*_*s P 5

我的猜测是,你正在装载你RadComboBox的每一个PostBack.

您应该首次检查页面是否正在加载,或者在OnSelectedIndexChanged事件触发时是否将页面回发到服务器上.

这是它应该如何工作:

protected void Page_Load(object sender, EventArgs e)
{
     if (!IsPostBack)
     {
         LoadcmbSavedSearch();
     }
 }
Run Code Online (Sandbox Code Playgroud)

如果你加载Items到你RadComboBox的每一个Postback,你SelectedValue将失去,因为你RadComboBox刚刚建成.