Good day!
In the code snippet below I'm always getting RadListView1.SelectedValue from previous ViewState at Page_Load handler.
For example, when I press "3" in the listview, I get "" in LabelRadListView1SelectedValue. Next time I press "5" and get "3" and so on.
Why "RadListView1.SelectedValue" isn't actual at Page_Load event on PostBack?
For example, It's going well at Page_LoadComplete event. So why RadListView1 restored from ViewState after Page_Load event?
I'm confused. Please, help!
RadListVew.aspx:
RadListVew.aspx.cs:
In the code snippet below I'm always getting RadListView1.SelectedValue from previous ViewState at Page_Load handler.
For example, when I press "3" in the listview, I get "" in LabelRadListView1SelectedValue. Next time I press "5" and get "3" and so on.
Why "RadListView1.SelectedValue" isn't actual at Page_Load event on PostBack?
For example, It's going well at Page_LoadComplete event. So why RadListView1 restored from ViewState after Page_Load event?
I'm confused. Please, help!
RadListVew.aspx:
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="RadListView.aspx.cs" Inherits="RadListV" %><%@ Import Namespace="Telerik.Web.UI" %><asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server"> <telerik:RadListView runat="server" ID="RadListView1" ItemPlaceholderID="PlaceHolderListContainer" DataKeyNames="data"> <LayoutTemplate> <asp:PlaceHolder ID="PlaceHolderListContainer" runat="server"></asp:PlaceHolder> </LayoutTemplate> <ItemTemplate> <asp:LinkButton ID="LinkButton1" runat="server" CommandName="Select"> <asp:Label runat="server" ID="Label1" Text='<%#Eval("data")%>' /> </asp:LinkButton> </ItemTemplate> <SelectedItemTemplate> <span style="font-weight: bold;"> <asp:LinkButton ID="LinkButton1" runat="server" CommandName="Select"> <asp:Label runat="server" ID="Label1" Text='<%#Eval("data")%>' /> </asp:LinkButton> </span> </SelectedItemTemplate> </telerik:RadListView> <div> <asp:Label runat="server" ID="LabelRadListView1SelectedValue" /> </div></asp:Content>
RadListVew.aspx.cs:
using System;using System.Collections.Generic;using System.Linq;using Telerik.Web.UI;public partial class RadListV : System.Web.UI.Page{ class ListItem { public int data { get; set; } } List<ListItem> ListDataSource { get { return (List<ListItem>)Session["ListDataSource"]; } set { Session["ListDataSource"] = value; } } protected void Page_Load(object sender, EventArgs e) { if (RadListView1.SelectedValue != null) LabelRadListView1SelectedValue.Text = RadListView1.SelectedValue.ToString(); } protected void Page_Init(object sender, EventArgs e) { ListDataSource = new List<ListItem>(); for (int i = 1; i < 5; i++) { ListDataSource.Add(new ListItem { data = i }); } RadListView1.DataSource = ListDataSource; }}