2015-03-30 2 views
0
if (currentMap.EditMap != null) 
{ 
ddlEditMapGroupName.SelectedIndex = ddlEditMapGroupName.Items.IndexOf(ddlEditMapGroupName.Items.FindByText(currentMap.EditMap)); 
} 

устанавливает значение выпадающего списка для хранимого значения ... но если currentMap.Edit карта является нулем, как я могу установить значение текст ListItem?установленного значения ListItem в DropDownList

<asp:DropDownList ID="ddlEditMapGroupName" AppendDataBoundItems="true" runat="server"> 
<asp:ListItem Text="Select Group" Value="" Selected="True"></asp:ListItem> 
</asp:DropDownList> 

ответ

0

Если я правильно понял ваш вопрос ...

Похоже, у вас есть выпадающий список, который уже имеет кучу ListItems в ней (?).

И вы пытаетесь установить выбранный элемент в соответствие с другим элементом управления на странице.

Одна из стратегий, которую я использую (в некоторых случаях), заключается в том, чтобы поместить запись в таблицу, на которую вы вытаскиваете свои данные с выпадающего списка, из которых сказано, просто «Не выбрано». Затем убедитесь, что все, что вы используете для запроса данных для своего раскрывающегося списка, вытаскивает запись «Не выбрано» в список.

С этим вы можете просто добавить в свой оператор управления предложение «else», чтобы установить выбранное значение «Не выбрано», если это необходимо.

0
if (currentMap.EditMap != null) 
    { 
    ddlEditMapGroupName.SelectedIndex = ddlEditMapGroupName.Items.IndexOf(ddlEditMapGroupName.Items.FindByText(currentMap.EditMap)); 
    } 
    else 
    { 
     ddlEditMapGroupName.SelectedValue = "0"; 
    } 

<asp:DropDownList ID="ddlEditMapGroupName" AppendDataBoundItems="true" runat="server"> 
<asp:ListItem Text="Select Group" Value="0" Selected="True"></asp:ListItem> 
</asp:DropDownList> 

Вы можете просто установить SelectedValue свойство значения по умолчанию в вашем случае является Select Group и его value является 0 ...

Это должно быть сделано, как только ваш DropDownList уже связываются с источник данных.