Telerik Grid устанавливает стандартное значение метки ASP.NET

У меня есть RADgrid, на котором есть событие щелчка строки. Это событие работает, и я вижу точку останова в коде на стороне сервера.

Со значением строки, которое я извлекаю, я могу обратиться к базе данных и получить результат, который я ищу, и назначить его элементу управления asp:label.

Проблема в том, что я никогда не вижу это значение на экране в метке. Я проверил, что свойство label.text имеет нужное мне значение, однако я не могу отобразить его на экране.

Есть ли команда, которую мне нужно запустить, чтобы обновить страницу после того, как сетка будет выполнена с помощью серверного элемента управления?


person user2673969    schedule 12.08.2013    source источник
comment
Покажите мне свой код GridView, метку и событие Rowclick!   -  person zey    schedule 12.08.2013


Ответы (1)


Пожалуйста, попробуйте с приведенным ниже фрагментом кода.

ASPX

<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
    <AjaxSettings>
        <telerik:AjaxSetting AjaxControlID="RadGrid1">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="RadGrid1" LoadingPanelID="RadAjaxLoadingPanel1" />
                <telerik:AjaxUpdatedControl ControlID="Label1" />
            </UpdatedControls>
        </telerik:AjaxSetting>
    </AjaxSettings>
</telerik:RadAjaxManager>
<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server">
</telerik:RadAjaxLoadingPanel>
<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" OnNeedDataSource="RadGrid1_NeedDataSource"
    OnSelectedIndexChanged="RadGrid1_SelectedIndexChanged">
    <MasterTableView>
        <Columns>
            <telerik:GridBoundColumn DataField="ID" UniqueName="ID" HeaderText="ID">
            </telerik:GridBoundColumn>
            <telerik:GridBoundColumn DataField="Name" UniqueName="Name" HeaderText="Name">
            </telerik:GridBoundColumn>
        </Columns>
    </MasterTableView>
    <ClientSettings Selecting-AllowRowSelect="true" EnablePostBackOnRowClick="true">
    </ClientSettings>
</telerik:RadGrid>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

ASPX.CS

protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
    dynamic data1 = new[] {
          new { ID = 1, Name ="Name_1"},
          new { ID = 2, Name = "Name_2"},
          new { ID = 3, Name = "Name_1"},
          new { ID = 4, Name = "Name_4"},
          new { ID = 5, Name = "Name_1"}
      };

    RadGrid1.DataSource = data1;
}


protected void RadGrid1_SelectedIndexChanged(object sender, EventArgs e)
{
    if (RadGrid1.SelectedItems.Count > 0)
    {
        GridDataItem selectedItem = (GridDataItem)RadGrid1.SelectedItems[0];
        // Perform Your Logic here
        Label1.Text = DateTime.Now.ToString();
    }
}

Для получения дополнительной информации, пожалуйста, проверьте ссылку ниже. http://www.telerik.com/community/forums/aspnet-ajax/grid/grid-row-click-showing-value-in-asp-label.aspx

person Jayesh Goyani    schedule 12.08.2013