Ist leider etwas unübersichtlich.
private void bearbeiten_PreRender(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
if(this.Visible)
{
if(ViewState["neuerReferenztyp"] == null)
ViewState["neuerReferenztyp"] = "";
global.setText(this,
Int32.Parse(Session["Sprache"].ToString()));
for(int i = 0; i < lstReferenzTypen123456.Items.Count;
i++)
if(lstReferenzTypen.Items[i].Text ==
ViewState["neuerReferenztyp"].ToString())
lstReferenzTypen.SelectedIndex = i;
getDaten();
if(ViewState["neuerReferenztyp"].ToString() == "")
{
getReferenzTypen();
}
}
}
}
Die Daten für die RBL wird in der global.setText() erledigt. Darin werden für
alle Komponenten die Beschriftungen festgelegt.
Hier nur der relevante Teil.
public static void setText(System.Web.UI.UserControl UC, int Sprache)
{
// Variablendeklaration
VR2005_v3_0.BL.BL myBL = new VR2005_v3_0.BL.BL();
RadioButtonList myRadioButtonList = new RadioButtonList();
string Seite = UC.GetType().FullName;
Seite = Seite.Substring(Seite.IndexOf(".")+1).Replace("_ascx", ".ascx");
ArrayList Text = new ArrayList();
// Datenbankverbindung öffnen
System.Data.SqlClient.SqlConnection myConn = myBL.OpenConn();
// Inhalt der Controls wird aus der DB ausgelesen
foreach(System.Web.UI.Control c in UC.Controls) // foreach = für jedes
Elemet in ...
{
switch(c.GetType().FullName)
{
case "System.Web.UI.WebControls.RadioButtonList":
myRadioButtonList = (RadioButtonList)c;
if(myRadioButtonList.Items.Count == 0)
{
Text = myBL.getSeiteninhalt(myConn,
myRadioButtonList.ID, Sprache, Seite);
for(int i = 0; i < Text.Count; i++)
{
ListItem myItem = new
ListItem(Text[i+1].ToString(), Text[i].ToString());
myRadioButtonList.Items.Add(myItem);
if(Text[i+3].ToString() != ""
&& Text[i+4].ToString() != "")
myRadioButtonList =
myBL.getTooltipp(myRadioButtonList, Text[i+3].ToString(), Text[i+4].ToString());
i+=4;
}
}
break;
default:
break;
}
}
// Datenbankverbindung schließen
myBL.CloseConn(myConn);
}
Hier noch die Methode, die beim ändern des Index aufgerufen wird.
private void lstReferenzTypen_SelectedIndexChanged(object sender,
System.EventArgs e)
{
ViewState["neuerReferenztyp"] = lstReferenzTypen.SelectedItem.Text;
}
Hoffe es ist nicht zu umständlich geschrieben...
-----Ursprüngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Daniel Wasser
Gesendet: Donnerstag, 14. Juli 2005 11:02
An: [email protected]
Betreff: Re: AW: [Asp.net] Problem mit RadioButtonList
Poste doch mal den Code fuers befüllen
und deine PreRender
Grüße, Daniel
Puehler, Pierre wrote:
> RBL sind nach PostBack immernoch gefüllt.
>
> Habe if(this.isPostBack) vor das Befüllen der RBL geschrieben und wird somit
> nur einmal ausgeführt.
>
> -----Ursprüngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Im Auftrag von Pessner, Andreas
> Gesendet: Donnerstag, 14. Juli 2005 10:39
> An: [email protected]
> Betreff: AW: [Asp.net] Problem mit RadioButtonList
>
> Damit hat er ein Problem mit dem ViewState! Die Werte die in der RBL stehen -
> werden somit nicht gemerkt - und verfallen somit nach dem Postback!
>
> Haste mal kontrolliert - ob die RBL noch nach dem Postback gefüllt
> sind? (aber schalte Deine DataBind Methode aus - also mit if
> (Page.isPostBack) behandeln
>
> -----Ursprüngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Im Auftrag von Puehler, Pierre
> Gesendet: Donnerstag, 14. Juli 2005 08:38
> An: [email protected]
> Betreff: AW: [Asp.net] Problem mit RadioButtonList
>
> In SelectedItem.Text steht immer der Name des ersten Eintrags, unabhängig
> davon was ich ausgewählt habe.
>
> -----Ursprüngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Im Auftrag von Pessner, Andreas
> Gesendet: Donnerstag, 14. Juli 2005 08:32
> An: [email protected]
> Betreff: AW: [Asp.net] Problem mit RadioButtonList
>
> Dann kontrolliere mal was in:
>
> blubb.SelectedItem.Text;
>
> steht!
>
> Entweder Debuggen - oder schneller per
> Response.Write(blubb.SelectedItem.Text);
>
> -----Ursprüngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Im Auftrag von Puehler, Pierre
> Gesendet: Donnerstag, 14. Juli 2005 08:29
> An: [email protected]
> Betreff: AW: [Asp.net] Problem mit RadioButtonList
>
> Ich befülle die Komponente wie schon gesagt erst im PreRender, der erst nach
> dem SelectedIndexChanged ausgeführt wird.
> Deswegen verwirrt es mich auch ein wenig.
>
> Gruß,
> Pierre
>
> -----Ursprüngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Im Auftrag von Pessner, Andreas
> Gesendet: Donnerstag, 14. Juli 2005 08:22
> An: [email protected]
> Betreff: AW: [Asp.net] Problem mit RadioButtonList
>
> Das passiert im Normalfall dann - wenn Deine Befüllungsroutine drüber geht!
>
> Damit es richtig funktioniert musste 1. den ViewState an haben, und 2. darf
> Dein DataBinding nur beim ersten Aufruf erfolgen!!!
>
> Das ereichst Du indem Du mit!
>
> if (!IsPostBack) {
> RadioButtonList1.DataSource = CreateDataSource();
> RadioButtonList1.DataTextField="StringValue";
> RadioButtonList1.DataValueField="CurrencyValue";
> RadioButtonList1.DataBind();
> }
>
> Arbeitest!
>
> Alles andere findest Du hier:
> ms-help://MS.NETFrameworkSDKv1.1.DE/cpref/html/frlrfsystemwebuiwebcont
> rolslistcontrolclassonselectedindexchangedtopic.htm
>
> -----Ursprüngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Im Auftrag von Puehler, Pierre
> Gesendet: Mittwoch, 13. Juli 2005 14:37
> An: [email protected]
> Betreff: [Asp.net] Problem mit RadioButtonList
>
> Hi,
>
> habe ein Problem mit dem Umgang mit einer RadioButtonList.
> Ich habe meiner Webanwendung, eine Seite auf der sich eine DropDownList und
> eine RadioButtonList befindet.
>
> Je nach Auswahl in der DropDownList wird aus der DB gelesen, welcher Punkt
> der RadioButtonList ausgewählt sein soll.
> Dies wird im PreRender erledigt und somit nach z.B. dem SelectedIndexChanged
> ausgeführt.
>
> Wenn ich nun in der RadioButtonList einen anderen Eintrag auswähle, wird der
> SelectedIndexChanged-Event gefeuert. Dieser jedoch liest anscheinend den
> SelectedItem nicht richtig aus. Es ist immer der erste Eintrag danach
> markiert.
>
> Ich habe euch mal unten den Quellcode meines SelectedIndexChanged
> aufgeschrieben.
>
> Code:
> private void myRadioButtonList_SelectedIndexChanged(object sender,
> System.EventArgs e) {
> RadioButtonList blubb = (RadioButtonList)sender;
> ViewState["neuerReferenztyp"] = blubb.SelectedItem.Text; }
>
>
> Hoffe es kann mir einer von euch helfen, oder zumindest Tipps geben, damit
> ich die Lösung finde...
>
> Gruß,
> Pierre
> _______________________________________________
> Asp.net Mailingliste, Postings senden an:
> [email protected]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/asp.net
>
> _______________________________________________
> Asp.net Mailingliste, Postings senden an:
> [email protected]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/asp.net
> _______________________________________________
> Asp.net Mailingliste, Postings senden an:
> [email protected]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/asp.net
>
> _______________________________________________
> Asp.net Mailingliste, Postings senden an:
> [email protected]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/asp.net
> _______________________________________________
> Asp.net Mailingliste, Postings senden an:
> [email protected]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/asp.net
>
> _______________________________________________
> Asp.net Mailingliste, Postings senden an:
> [email protected]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/asp.net
> _______________________________________________
> Asp.net Mailingliste, Postings senden an:
> [email protected]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/asp.net
>
>
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net