DropDownList & Viewstate

DropDownList & Viewstate

am 31.01.2008 23:56:53 von jwnews1231

Hi,

I've been working on minimizing the use of the ViewState in my asp.net
applications because of its overhead. The problem I am having is that
I keep losing SelectedIndex in the DropDownLists. I don't lose the
SelectedIndex when the ViewState is enabled, only when it is off.

I have a dropdownlist named countryCbo inside of a UserControl and
countryCbo's EnableViewState property is false. In the OnInit()
method of the UserCountry it loads the country list from the database
and DataBinding it.

public void LoadCountryList() {
// SQL Stuff ...

this.countryCbo.DataTextField = "Name";
this.countryCbo.DataValueField = "Code";
this.countryCbo.DataSource = countries;
this.countryCbo.DataBind();
}

// Doing this will load the countries but I lose the SelectedIndex on
a postback.
protected override void OnInit(EventArgs e) {
LoadCountryList();
base.OnInit(e);
}

// Doing this will load the countries but when a postback occurs I
lose all the countries and the list is empty.
protected override void OnInit(EventArgs e) {
if (!Page.IsPostBack) {
LoadCountryList();
}
base.OnInit(e);
}

I have read somewhere that the SelectedIndex resets back to -1 if a
databind occurs. Would that be the case?
Could someone tell me how they have gotten their dropdownlists to work
without the ViewState being enabled?

Thank you!

JW

RE: DropDownList & Viewstate

am 01.02.2008 06:02:19 von rodoopus

// Enable postback for the dropdown

// in page load event

int ndx = page.request("DropDownList1");

// Now do you databinding

// then restore the selected index

DropDownList1.SelectedIndex = ndx;


--
aaa


"jwnews1231@gmail.com" wrote:

> Hi,
>
> I've been working on minimizing the use of the ViewState in my asp.net
> applications because of its overhead. The problem I am having is that
> I keep losing SelectedIndex in the DropDownLists. I don't lose the
> SelectedIndex when the ViewState is enabled, only when it is off.
>
> I have a dropdownlist named countryCbo inside of a UserControl and
> countryCbo's EnableViewState property is false. In the OnInit()
> method of the UserCountry it loads the country list from the database
> and DataBinding it.
>
> public void LoadCountryList() {
> // SQL Stuff ...
>
> this.countryCbo.DataTextField = "Name";
> this.countryCbo.DataValueField = "Code";
> this.countryCbo.DataSource = countries;
> this.countryCbo.DataBind();
> }
>
> // Doing this will load the countries but I lose the SelectedIndex on
> a postback.
> protected override void OnInit(EventArgs e) {
> LoadCountryList();
> base.OnInit(e);
> }
>
> // Doing this will load the countries but when a postback occurs I
> lose all the countries and the list is empty.
> protected override void OnInit(EventArgs e) {
> if (!Page.IsPostBack) {
> LoadCountryList();
> }
> base.OnInit(e);
> }
>
> I have read somewhere that the SelectedIndex resets back to -1 if a
> databind occurs. Would that be the case?
> Could someone tell me how they have gotten their dropdownlists to work
> without the ViewState being enabled?
>
> Thank you!
>
> JW
>

Re: DropDownList & Viewstate

am 01.02.2008 15:02:05 von jwnews1231

Thanks alot, that fixed it. I didn't think to check the Request's
Form variable for the UniqueID of the control.

JW