Как выбрать значение в ASPxCombobox (DevExpress) заполняемом из БД.

gouph

Есть ASPxCombobox с привязанным DataSource
<dx:ASPxComboBox <span>ID</span><span>=</span><span>"PREFERENCE"</span> <span>runat</span><span>=</span><span>"server"</span> <span>SelectedIndex</span><span>=</span><span>"0"</span> <span>Width</span><span>=</span><span>"430px"</span> 
 <span>ClientInstanceName</span><span>=</span><span>"preference"</span> <span>AutoPostBack</span><span>=</span><span>"True"</span> 
 <span>DataSourceID</span><span>=</span><span>"PREFERENCE_DS"</span> <span>TextField</span><span>=</span><span>"NAME"</span> <span>TextFormatString</span><span>=</span><span>"{0}"</span> 
 <span>ValueField</span><span>=</span><span>"ID"</span>>
 <Columns>
 <dx:ListBoxColumn <span>FieldName</span><span>=</span><span>"ID"</span> <span>Visible</span><span>=</span><span>"False"</span> <span>/</span>>
 <dx:ListBoxColumn <span>Caption</span><span>=</span><span>"Преференция"</span> <span>FieldName</span><span>=</span><span>"NAME"</span> <span>/</span>>
 <<span>/</span>Columns>
<<span>/</span>dx:ASPxComboBox>
Как выставить ему желаемое значение? Ну т.е. скажем прочитал из базы ID и хочу в соответствии с этим ID выбрать нужную строку в комбобоксе.Пробовал
PREFERENCE.Value = reader["PREFERENCE"].ToString();
и
PREFERENCE.Text = reader["PREFERENCE"].ToString();
Не работает.
4 ответа

gouph

var item = PREFERENCE.Items.FindByValue(1);

if (item != null)
 item.Selected = true
как обычно, в общем


gouph

SanSYS,items, на сколько я понимаю, вообще пустые. Во всяком случае PREFERENCE.Items.FindByValue(reader["PREFERENCE"].ToString()) возвращает NULL, а PREFERENCE.Items[0] - out of range.


gouph

SanSYS,items, на сколько я понимаю, вообще пустые. Во всяком случае PREFERENCE.Items.FindByValue(reader["PREFERENCE"].ToString()) возвращает NULL, а PREFERENCE.Items[0] - out of range.
так вызови DataBind() у своего списка, прежде чем лезть в Items


gouph

SanSYS, спасибо! теперь все отлично.