view state in previous page using cross page postback

Discussion in 'ASP .Net' started by bill, Feb 16, 2006.

  1. bill

    bill Guest

    Is there a way to retrieve values from the viewstate in the previouspage
    using cross page postback?

    Thanks!
    Bill
    bill, Feb 16, 2006
    #1
    1. Advertising

  2. ASP.NET 2.0 resolves this by embedding a hidden input field name, __POSTBACK .
    This field is embedded only when there is an IButtonControl on the page and
    its PostBackUrl property is set to a non-null value.

    The field contains the view state information of the poster page.

    To access the view state of the poster page, you can use the new
    PreviousPage property of the page:

    Page poster = this.PreviousPage;

    Then you can find any control from the previous page and read its state:

    Label posterLabel = poster.findControl("myLabel");
    string lbl = posterLabel.Text;

    Peter
    --
    Co-founder, Eggheadcafe.com developer portal:
    http://www.eggheadcafe.com
    UnBlog:
    http://petesbloggerama.blogspot.com




    "bill" wrote:

    > Is there a way to retrieve values from the viewstate in the previouspage
    > using cross page postback?
    >
    > Thanks!
    > Bill
    >
    >
    >
    =?Utf-8?B?UGV0ZXIgQnJvbWJlcmcgW0MjIE1WUF0=?=, Feb 16, 2006
    #2
    1. Advertising

  3. bill

    Giorgio Guest

    I think that what Bill wants is a way to access the viewstate on the
    previous page so if you add any items to viewstate i.e
    viewstate.add("whatever", "somedata") and then retrieving on the next
    page the viewstate("whatever")...
    Is that right Bill?
    Giorgio, Feb 16, 2006
    #3
  4. bill

    bill Guest

    Yes, that is correct - sorry for not expressing it clearly.
    "Giorgio" <> wrote in message
    news:...
    >I think that what Bill wants is a way to access the viewstate on the
    > previous page so if you add any items to viewstate i.e
    > viewstate.add("whatever", "somedata") and then retrieving on the next
    > page the viewstate("whatever")...
    > Is that right Bill?
    >
    bill, Feb 16, 2006
    #4
  5. Ah. Haven't found a way to do that.

    Controls and their state, yes. The actual ViewState collection, no.

    Of course, remember that ViewState is not designed for cross-page
    operations. You can use Session, Cache, Application, or the HttpContext Items
    collection for things like that, depending on which is appropriate.

    Peter

    --
    Co-founder, Eggheadcafe.com developer portal:
    http://www.eggheadcafe.com
    UnBlog:
    http://petesbloggerama.blogspot.com




    "bill" wrote:

    > Yes, that is correct - sorry for not expressing it clearly.
    > "Giorgio" <> wrote in message
    > news:...
    > >I think that what Bill wants is a way to access the viewstate on the
    > > previous page so if you add any items to viewstate i.e
    > > viewstate.add("whatever", "somedata") and then retrieving on the next
    > > page the viewstate("whatever")...
    > > Is that right Bill?
    > >

    >
    >
    >
    =?Utf-8?B?UGV0ZXIgQnJvbWJlcmcgW0MjIE1WUF0=?=, Feb 16, 2006
    #5
  6. bill

    Giorgio Guest

    Ok Bill, i found it for you! You cannot do that. Here is the Microsoft
    note about what you want

    "If the source and target page are in different applications, you
    cannot directly get the values of controls on the page, but you can
    read the posted data from the Form dictionary. You cannot read view
    state from the source page, because it is hashed. If you want to store
    values in the source page and make them available in a target page in
    another application, you can store the values as strings inside hidden
    fields on the source page and access them through Request.Form on the
    target page."

    http://msdn2.microsoft.com/en-us/library/ms178139(vs.80).aspx
    Giorgio, Feb 17, 2006
    #6
  7. bill

    bill Guest

    I think I remember reading that, but thinking that they were still referring
    to the source and target page being in different applications. I thought
    that because the following sentence also refers to "another application".
    Wishful thinking! I would like to use the viewstate because I have to store
    a username/password and grab it in the target page, and I don't want to use
    hidden fields since view source will reveal the password. I guess I'll try
    using properties.

    Thanks for your help!
    Bill


    "Giorgio" <> wrote in message
    news:...
    > Ok Bill, i found it for you! You cannot do that. Here is the Microsoft
    > note about what you want
    >
    > "If the source and target page are in different applications, you
    > cannot directly get the values of controls on the page, but you can
    > read the posted data from the Form dictionary. You cannot read view
    > state from the source page, because it is hashed. If you want to store
    > values in the source page and make them available in a target page in
    > another application, you can store the values as strings inside hidden
    > fields on the source page and access them through Request.Form on the
    > target page."
    >
    > http://msdn2.microsoft.com/en-us/library/ms178139(vs.80).aspx
    >
    bill, Feb 17, 2006
    #7
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Ren
    Replies:
    1
    Views:
    409
    =?Utf-8?B?U2F0aXNo?=
    Apr 20, 2004
  2. =?Utf-8?B?dGhlV2l6YXJkMQ==?=

    Cross Page Posting using public property on previous page

    =?Utf-8?B?dGhlV2l6YXJkMQ==?=, Apr 20, 2006, in forum: ASP .Net
    Replies:
    2
    Views:
    701
    Swanand Mokashi
    Apr 20, 2006
  3. Bob Rock
    Replies:
    0
    Views:
    359
    Bob Rock
    Sep 17, 2006
  4. YankeeImperialistDog
    Replies:
    3
    Views:
    829
  5. Parthiv Joshi
    Replies:
    1
    Views:
    649
    Samuel L Matzen
    Jul 6, 2004
Loading...

Share This Page