Masterpage-Dropdownliste enthält keine Auswahlindexe

Ok, meine Masterpage hat eine Dropdown-Liste, die die Größe steuert, die viele Dinge betrifft. Ich muss auf den Dropdown-Index von Inhaltsseiten zugreifen, damit ich ihn mit diesem Code verwende.

public partial class MasterPage : System.Web.UI.MasterPage
{
public DropDownList MySize { get { return _ddlSize; } }
}

Ich benutze Ajax und wenn die Größe ändert sich das Menü auf der Masterpage ändert sich gut.

Aber wenn ich auf das aktualisierte Menü klicke, verwendet es den Null-Index der Dropdown-Liste auf meiner Inhaltsseite sogar durch visuelle Darstellung der Größe, die ich ausgewählt habe.

  int size = Convert.ToInt32(Master.MySize.SelectedItem.Text); //Uses 0 index :(

Ich möchte Session nicht verwenden, ich verstehe einfach nicht, warum dies nicht 100% der Zeit funktioniert. Wer hat Ideen?

Antwort auf "Masterpage-Dropdownliste enthält keine Auswahlindexe " 2 von antworten

habe ich herausgefunden!

Ich setze die Dropdown-Liste auf ein öffentliches statisches Objekt

public static DropDownList MySize;

Dann habe ich es einfach gleich der Seiteninstanz jedes Mal festgelegt, wenn die Masterpage geladen wird.

protected void Page_Load(object sender, EventArgs e)
{
    MySize = _ddlSize;
}

Das Aufrufen der DropDownList ist etwas anders, da es sich um ein statisches Objekt handelt.

MasterPage.MySize.SelectedItem.Text

Aber es funktioniert auf allen Inhaltsseiten, die von der Masterpage stammen.

haben Sie diese Lösung in einem Multi-User-Szenario überprüft, da der Wert statisch ist, wird er über verschiedene Benutzer

reflektiert, sollte der auf der Masterseite festgelegte Ansichtszustand den Dropdownlistenwert beibehalten oder versuchen, ausgeblendete Steuerelemente zu verwenden, um den Wert

hochzuhalten.