В asp.net, если вы определите asp: ListBox следующим образом:
<asp:ListBox ID="listBox2" runat="server" SelectionMode="Single" Rows="3">
<asp:ListItem>1</asp:ListItem>
<asp:ListItem>2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
<asp:ListItem>5</asp:ListItem>
<asp:ListItem>6</asp:ListItem>
<asp:ListItem>7</asp:ListItem>
<asp:ListItem Selected="True">8</asp:ListItem>
<asp:ListItem>9</asp:ListItem>
<asp:ListItem>10</asp:ListItem>
</asp:ListBox>
Вы увидите, что выбранный элемент виден сверху. Но если вы определите его как список со множественным выбором, выбранные элементы не будут видны, и вам придется прокрутить список вниз, чтобы найти их.
<asp:ListBox ID="listBox1" runat="server" SelectionMode="Multiple" Rows="3">
<asp:ListItem>1</asp:ListItem>
<asp:ListItem>2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
<asp:ListItem>5</asp:ListItem>
<asp:ListItem>6</asp:ListItem>
<asp:ListItem>7</asp:ListItem>
<asp:ListItem Selected="True">8</asp:ListItem>
<asp:ListItem Selected="True">9</asp:ListItem>
<asp:ListItem>10</asp:ListItem>
</asp:ListBox>
Я немного поискал в Google и вижу, что это не редкая проблема. Но я не нашел хороших решений, поэтому подумал, что я попрошу здесь.
Моей первой мыслью было попробовать JQuery, чтобы решить эту проблему. Каковы некоторые из ваших решений?
Некоторые из ответов даже не понимают мою проблему. Меня интересует только то, чтобы первый выбранный вариант был виден. Убедитесь, что он прокручивается в поле зрения.
Я поиграл с JQuery и придумал следующее:
<script type="text/javascript">
$(document).ready(function() {
$("#listBox1 option:nth-child(8)").attr('selected',true);
});
</script>
Но я думаю, что мне больше всего нравится ответ @ Церебра.