Выбранное необменное событие в radcombobox

У меня есть radcombobox как:

<telerik:RadComboBox ID="SelectInitiative" runat="server" AutoPostBack="true" 
                    DataSourceID="SqlInitiative" DataTextField="Initiative_Name" 
                    DataValueField="ID"  EmptyMessage="Select Initiative" Height="200px" 
                      OnSelectedIndexChanged="SelectInitiative_SelectedIndexChanged" Width="300px">
                </telerik:RadComboBox></td>
            <td>
                <asp:Label ID="Label1" runat="server" Text=""></asp:Label>

            </td>`


<asp:SqlDataSource ID="SqlInitiative" runat="server" 
        ConnectionString="<%$ ConnectionStrings:ProjectPlanningConnectionString %>" 
        SelectCommand="SELECT * FROM [Initiative]"></asp:SqlDataSource>

И код для события таков:

 protected void SelectInitiative_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
    {
        if (SelectInitiative.SelectedValue.ToString() != "")
        {
            Session["InitiativeID"] = SelectInitiative.SelectedValue.ToString();
        }
        Label1.Text = "You selected " + e.Value + " item";

    }

Проблема в том, что он не выбирает значение " selectedvalue" или "e.Value", оба значения оказываются пустыми....... Пожалуйста, помогите..........

2 ответа

Вы можете попробовать это?

protected void SelectInitiative_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
    if(!IsPostBack)
    {
        if (SelectInitiative.SelectedValue.ToString() != "")
        {
            Session["InitiativeID"] = SelectInitiative.SelectedValue.ToString();
        }
        //Or change this line 
        //Label1.Text = "You selected " + e.Value + " item";
        //To this sample
        Label1.Text = "You selected " + SelectInitiative.SelectedValue + " item";

    }

}

Или посмотрите / проверьте содержимое этой переменной в свойствах RadComboBoxSelectedIndexChangedEventArgs:

-Текст: текст элемента, который был только что выбран.

-Value: это значение элемента, который был только что выбран.

-OldText: текст ранее выбранного элемента

-OldValue: значение элемента, который был ранее выбран

Или попробуйте это:

Label1.Text = "You selected " + SelectInitiative.SelectedValue + " item";

У меня была аналогичная проблема, и для меня источником было то, что я устанавливал источник данных для каждого AutoPostBack. Убедитесь, что вы не повторно инициализируете элементы в поле со списком до срабатывания события.

Другие вопросы по тегам