Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Сортировка DropDownList / 7 сообщений из 7, страница 1 из 1
22.10.2014, 14:51
    #38784146
sesh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка DropDownList
Добрый день, как можно отсортировать в C# VS2003 DropDownList?

Заношу данные
Код: c#
1.
2.
3.
4.
5.
6.
7.
			
for (int i=0;i<=nodecount-1;i++)
			{
				Dropdownlist2.Items.Add(new ListItem(xmlDoc.SelectSingleNode("//address/@desc").Value, xmlDoc.SelectSingleNode("//address/@code").Value  ));	
																			
				node.RemoveChild(node.FirstChild); 
			}



Далее
ListItem[] SortedItem = new ListItem[Dropdownlist2.Items.Count];
DropDownList1.Items.CopyTo(SortedItem, 0);

а теперь отсортировать каким-то образом SortedItem как? для 2003 студии ничего толкового не нашел :(
...
Рейтинг: 0 / 0
22.10.2014, 17:09
    #38784421
VIT2708_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка DropDownList
sesh,

сортируй не dropdown list а его источник
...
Рейтинг: 0 / 0
22.10.2014, 17:25
    #38784444
sesh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка DropDownList
VIT2708_sesh,

сортируй не dropdown list а его источник

источник не возможно, это чужой сервис, по которому я получаю данные как есть
...
Рейтинг: 0 / 0
22.10.2014, 17:31
    #38784450
VIT2708_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка DropDownList
seshVIT2708_sesh,

сортируй не dropdown list а его источник

источник не возможно, это чужой сервис, по которому я получаю данные как есть

Код: c#
1.
2.
3.
List<object> source = источник;
DropDownList.DataSource = source.Sort();
DropDownList.DataBind();



должно быть как то так
...
Рейтинг: 0 / 0
22.10.2014, 18:23
    #38784509
sesh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка DropDownList
VIT2708_seshпропущено...


источник не возможно, это чужой сервис, по которому я получаю данные как есть

Код: c#
1.
2.
3.
List<object> source = источник;
DropDownList.DataSource = source.Sort();
DropDownList.DataBind();



должно быть как то так

List<object> не понимает
...
Рейтинг: 0 / 0
22.10.2014, 18:51
    #38784541
VIT2708_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка DropDownList
sesh,

Это я привел как пример

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
class Item :IComparable<Item>
{
Item(int id, string name)
{
Id=id;
Name=name;

int Id {get; set;}
string Name {get; set;}

public int CompareTo(Item compare_rec)
        {
            // A null value means that this object is greater. 
            if (compare_rec == null)
                return 1;

            else
                return this.Name.CompareTo(compare_rec.Name); // или сортировка по другому полю
        }
}




ASPX

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
List<Item> items = new List<Item>();
for (int i=0;i<=nodecount-1;i++)
{
Item item = new Item(new ListItem(xmlDoc.SelectSingleNode("//address/@desc").Value, xmlDoc.SelectSingleNode("//address/@code").Value );

 items.Add(item);
}

 items.Sort();

DropDownList.Datasource = items;
DropDownList.DataBind();




В разметке ASPX
Код: plaintext
1.
2.
3.
<asp:DropDownList ID="ddl" runat="server" DataValueField="id" 
                            DataTextField="name">
                        </asp:DropDownList>
...
Рейтинг: 0 / 0
23.10.2014, 12:23
    #38785185
beowulf-da
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка DropDownList
sesh,

хз что за Item у вас, можно ещё так:
Код: c#
1.
2.
      this.Dropdownlist2.DataSource = list.OrderBy(t => t.Value); // вместо Value поставьте ваше свойство
      this.Dropdownlist2.DataBind();
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Сортировка DropDownList / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]