Тема
|
DropDownList Web Control Problem
|
|
Автор |
Borg (Нерегистриран) |
Публикувано | 23.09.04 09:25 |
|
Това е малко код:
this.ddl_filter_receiver.ClearSelection();
for (ii=0; ii<this.ddl_filter_receiver.Items.Count; ii++)
{
if (this.ddl_filter_receiver.Items[ii].Value == this.txt_receiver.Text)
{
this.ddl_filter_receiver.SelectedIndex = ii;
break;
}
}
където: ddl_filter_receiver е DropDownList Web Control, а txt_receiver е най-обикновен TextBox Web Control, който съдържа стойността, която искам да е селектната в падащият списък (има такава стойност в същият списък).
Това нещо ми изкарва грешка DropDownList cannot have multiple selected items.
А като напиша следното:
this.ddl_filter_receiver.ClearSelection();
for (ii=0; ii<this.ddl_filter_receiver.Items.Count; ii++)
{
if (this.ddl_filter_receiver.Items[ii].Value == this.txt_receiver.Text)
{
this.ddl_filter_receiver.SelectedIndex = 2;
break;
}
}
грешката изчезва и селектнат става съответният item и всичко е наред.
Въпросът: ЗАЩО СТАВА ТАКА?????
Как може с числена стойност да работи, а с променлива със същата стойност да не работи?! Framework ли е бъгав, или аз просто незнам как да сетна скапания SelectedIndex
"За да чуеш, трябва да мълчиш" (Оджиън)
|
|
Тема
|
Re: DropDownList Web Control Problem
[re: Borg]
|
|
Автор |
BlackEarl (гледам умно) |
Публикувано | 23.09.04 13:19 |
|
Преди всичко това напиши:
ddl_receiver.SelectedItem.Selected=false;
може и да съм объркал името на дропдоуна.
|
|
Тема
|
Re: DropDownList Web Control Problem
[re: BlackEarl]
|
|
Автор |
Borg (Нерегистриран) |
Публикувано | 23.09.04 13:47 |
|
Не става - всички методи за изчистване на селекшъна пробвах (цикъл и false на всичко; както ти си написал; както и -1 на SelectedIndex), къде ли не го чистих този списък, във всяка една възможна функция го слагах - не става - все същата грешка дава като ползвам променливата
"За да чуеш, трябва да мълчиш" (Оджиън)
|
|
Тема
|
Re: DropDownList Web Control Problem
[re: Borg]
|
|
Автор |
BlackEarl (гледам умно) |
Публикувано | 23.09.04 15:15 |
|
При мен кода ти няма проблени и в двата случая.
ClearSelection ме съмнява
This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.
[C#]
public virtual void ClearSelection();
|
|
Тема
|
Re: DropDownList Web Control Problem
[re: BlackEarl]
|
|
Автор |
Borg (Нерегистриран) |
Публикувано | 23.09.04 15:49 |
|
Хъх... на кой framework го пускаш?
освен РС-то ми нещо да се е омазало :((
ок, 10х. Ще видя какво ще правя в този случай :(
"За да чуеш, трябва да мълчиш" (Оджиън)
|
|
Тема
|
Re: DropDownList Web Control Problem
[re: BlackEarl]
|
|
Автор |
Borg (Нерегистриран) |
Публикувано | 23.09.04 16:23 |
|
Сега го пробвах със и без ClearSelection на Web Servera (със сигурност не е омазан), и пак гърми. Направо се чудя какво да правя с тоя селекшън
"За да чуеш, трябва да мълчиш" (Оджиън)
|
|
Тема
|
Re: DropDownList Web Control Problem
[re: Borg]
|
|
Автор |
BlackEarl (гледам умно) |
Публикувано | 24.09.04 08:34 |
|
FrameWork-а е 2.
ClearSelection() не прави проблеми просто забелязах в хелп-а че не е предназначен за ползване.
Задължително ли трябва да търсиш елемента с итерация.Пробвай нещо такова:
ListItem li=ddl_filter_receiver.Items.FindByValue(txt_receiver.Text);
if(li!=null)
{
ddl_filter_receiver.SelectedItem.Selected=false;
li.Selected=true;
}
|
|
Тема
|
Re: DropDownList Web Control Problem
[re: BlackEarl]
|
|
Автор |
Borg (Нерегистриран) |
Публикувано | 24.09.04 16:53 |
|
Пак не става :(((((( Явно Framework е бъгав - ще се чака 2 да излезе официално.
"За да чуеш, трябва да мълчиш" (Оджиън)
|
|
|
твоя код с ClearSelection бачка супер при мене ...
Все пак пробвай това:
object o = null;
this.ddl_filter_receiver.ClearSelection();
this.ddl_filter_receiver.SelectedIndex = -1;
for (ii=0; ii<this.ddl_filter_receiver.Items.Count; ii++)
{
. . . if (this.ddl_filter_receiver.Items[ii].Value == this.txt_receiver.Text)
. . . . . . o = this.ddl_filter_receiver.Items[ii];
. . . this.ddl_filter_receiver.Items[ii].Selected = false;
}
this.ddl_filter_receiver.SelectedIndex = this.ddl_filter_receiver.Items.IndexOf(o);
това определено е бъг ... ClearSelection би трябвало да оправи нещата без останалите галимации ...
XM TurboCT .. where comfort meets power
|
|