Forum: ASP.NET |
Thema:
Dropdownlist/Postback Probleme |
Von:
(
26.09.2005 00:02) |
Hi,
Ich lade aus einer XML Datei Fragen in eine DDL. Wenn eine Frage ausgewählt wird, wird die Antwort dazu ebenfalls aus der XML Datei eingelesen. Nun zu den Problemen: Ersten wird die Antwort auf eine Frage erst ab der 2. Auswahl geladen. D.h. wenn man die Seite aufruft und eine Farge auswählt kommt erstmal nichts. Erst wenn man nochmal eine auswählt. Desweiteren wird die DDL bei jedem Postback wieder mit Fragen gefüllt, so dass alle Fragen mehrmals vorkommen. Wenn ich jeddoch die DDL nur fülle, wenn kein Postback vorliegt, ist sie nach Auswahl einer Frage leer.
DataSet ds_faq = new DataSet();
protected System.Web.UI.WebControls.Label lbl_text;
protected System.Web.UI.WebControls.DropDownList ddl_topic;
private void Page_Load(object sender, System.EventArgs e)
{
getData();
}
private void getData()
{
StreamReader stream = new StreamReader(Server.MapPath("../faq/faq.xml"));
XmlTextReader reader = new XmlTextReader(stream);
string result = null;
while (reader.Read())
{
if (reader.LocalName.Equals("topic"))
{
result = reader.ReadString();
ListItem li = new ListItem(result,result);
ddl_topic.Items.Add(li);
}
}
reader.Close();
stream.Close();
ds_faq.ReadXml(Server.MapPath("../faq/faq.xml"));
}
private void ddl_topic_SelectedIndexChanged(object sender, System.EventArgs e)
{
DataTable t = ds_faq.Tables["quest"];
foreach (DataRow r in t.Rows)
{
if (r.ItemArray.GetValue(0).ToString() == ddl_topic.SelectedValue.ToString())
{
string i = r.ItemArray.GetValue(1).ToString();
i = Regex.Replace(i,"n","<br>");
lbl_text.Text = i;
}
}
}
Betreff |
Von |
Datum |
|
  |
Re: Dropdownlist/Postback Probleme
Hallo Markus,<br><br>die DDL hat die Eigenschaft AutoPostBack, wenn du die auf True setzt, müsste dein erstes Problem gelöst sein.<br>Was dein zweites Problem angeht, kannst du entweder den Aufruf zum... |
 |
 |
 |
|
|
Jens
Buthe
|
26.09.2005 08:40 |
|
  |
Re: Dropdownlist/Postback Probleme
AutoPostBack ist auf true gestellt, hatte ich vergessen zu erwähnen.<br><br>Das mit der Abfrage von IsPostBack funktioniert leider nicht, wie im ersten post erwähnt "Wenn ich jeddoch die DDL nur fülle,... |
 |
 |
 |
|
|
|
26.09.2005 13:35 |
|
|
|
26.09.2005 13:42 |
|
  |
Re: Dropdownlist/Postback Probleme
also,<br>ich hab dies mal nachgebaut:<br><br>protected System.Web.UI.WebControls.Label lbl_text;<br>protected System.Web.UI.WebControls.DropDownList ddl_topic;<br>private void Page_Load(object sender,... |
 |
 |
 |
|
|
Jens
Buthe
|
26.09.2005 14:08 |
|
  |
Re: Dropdownlist/Postback Probleme
Hab den (wirklich dummen) Fehler gefunden.<br><br>ds_faq.ReadXml(Server.MapPath("faq.xml"));<br><br>muss in ddl_topic_SelectedIndexChanged |
 |
 |
 |
|
|
|
26.09.2005 16:37 |
|
  |
Re: Dropdownlist/Postback Probleme
War leider doch nicht so einfach.<br><br>Die Seite wird von von einer MasterPage abgeleitet und deswegens cheint es nicht zu funktieren. Zum testen hatet ich die Seite wieder von Page abgeleitet, die... |
 |
 |
 |
|
|
|
26.09.2005 17:06 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!