Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

List Box

1.7K
05 мая 2006 года
alektrik
140 / / 16.01.2006
Люди пмагите пжайлуста... как в List Box создать несколько колонок? и еще как обновить содержимое List Box'a, например:

ListBox lb=ListBox();
ArrayList al=new ArrayList();
al.Add(...);
...
lb.DataSource=al; //Тут всё срабатывает безотказно
...
al.Add(...);
...
lb.DataSource=al; //А вот тут надо чё-нть прийдумать типа какого-нть Update
273
06 мая 2006 года
3A3-968M
1.2K / / 22.12.2005
Чтобы информация отображалась в несколько колонок, можно использовать свойство MultiColumn=true. А если ты хочешь создать несколько колонок сам, тогда лучше использовать ListView. Теперь что касается обновления, вот такой фокус прокатывает:
lb.DataSource=al; //Тут всё срабатывает безотказно
...
al.Add(...);
...
lb.DataSource=null; //убираем источник данных
lb.DataSource=al; //снова указываем
то происходит потому, что данные добавляются при установке свойства DataSource и дальше не зависят от источника данных. Об этом пишется в MSDN: When the DataSource property is set, a user cannot modify the items collection
1.7K
07 мая 2006 года
alektrik
140 / / 16.01.2006
Видел такое св-во и даже включал... тока толку от него. Каким обр-ом дописать инфу в конкретную колонку и как для колонки создать заголовок? а в ListView через что это вооще делается? могёшь пару примерчиков кинуть?
273
07 мая 2006 года
3A3-968M
1.2K / / 22.12.2005
На ListView всё тобой перечисленное легко сделать:
ListView1.Width = 270;
ListView1.Location = new System.Drawing.Point(10, 10);

// Создаём колонки
ColumnHeader header1 = new ColumnHeader(),
header2 = new ColumnHeader();

// Выставляем свойства
header1.Text = "File name";
header1.TextAlign = HorizontalAlignment.Left;
header1.Width = 70;

header2.TextAlign = HorizontalAlignment.Left;
header2.Text = "Location";
header2.Width = 200;

// Добавляем колонки в listview
ListView1.Columns.Add(header1);
ListView1.Columns.Add(header2);

// Заполняем колонки
// Колонки заполняем jpg файлами в этой директории
System.IO.DirectoryInfo dirInfo =
new System.IO.DirectoryInfo(
"C:\\Documents and Settings\\All Users" +
"\\Documents\\My Pictures\\Sample Pictures");

System.IO.FileInfo[] files = dirInfo.GetFiles("*.jpg");
if (files != null)
{
foreach ( System.IO.FileInfo file in files )
{
ListViewItem item = new ListViewItem(file.Name);
item.SubItems.Add(file.FullName);
ListView1.Items.Add(item);
}
}
1.7K
07 мая 2006 года
alektrik
140 / / 16.01.2006
Всё компилится нормально, но не работает...
заголовков вплотную не вижу... добавляется поочередно по столбцам, а надо чтоб можно было добавоять в конкретный столбец, короче надо мне тел. справочник.

P.S исп-ю VS 7 .NET (так на всяк случай)
713
07 мая 2006 года
Ap0k
360 / / 13.03.2006
Цитата:
Originally posted by alektrik
Всё компилится нормально, но не работает...
заголовков вплотную не вижу... добавляется поочередно по столбцам, а надо чтоб можно было добавоять в конкретный столбец, короче надо мне тел. справочник.

P.S исп-ю VS 7 .NET (так на всяк случай)


На твоём месте гораздо проще задействовать DataGridView

713
07 мая 2006 года
Ap0k
360 / / 13.03.2006
Цитата:
Originally posted by Ap0k
На твоём месте гораздо проще задействовать DataGridView


Прошу прощения, не прочитал, что используешь VS.NET 7 (насколько я понял это релиз 2003-его года). Может проще поставить Visual Studio 2005 ?

273
08 мая 2006 года
3A3-968M
1.2K / / 22.12.2005
ApOk прав, лучше использовать DataGridView. Вот тебе примерчик с добавлением строк и столбцов (dataGridView1 - это экземпляр класса DataGridView):

Цитата:

DataGridViewTextBoxColumn column1 = new DataGridViewTextBoxColumn(),
column2 = new DataGridViewTextBoxColumn(); //Создаём две колонки
column1.HeaderText="Person"; //Название первой колонки
column2.HeaderText="Phone number"; //Название второй колонки
dataGridView1.Columns.AddRange(column1, column2); //Добавляем колонки
DataGridViewRow row1=new DataGridViewRow(); //Создаём строку данных
DataGridViewCell cell1 = new DataGridViewTextBoxCell(),
cell2 = new DataGridViewTextBoxCell(); //Создаём две ячейки
cell1.Value = "Peter"; //Ячейка, которая запишется в первую колонку
cell2.Value = "222-333"; //Ячейка, которая запишется во вторую колонку
row1.Cells.AddRange(cell1, cell2); //Добавляем ячейки в строку
dataGridView1.Rows.Add(row1); //Добавляем строку в таблицу

1.7K
08 мая 2006 года
alektrik
140 / / 16.01.2006
В VS 7 есть DataView и DataGrid, а DataGridView такого не нашел...
VS 2005 конечно хорошо, тока не сейчас...
242
08 мая 2006 года
Оlga
2.2K / / 04.02.2006
пример таблицы используя ListView

свойствo View установи Details
При помощи свойства Items добавляем нужное кол-во колонок
273
08 мая 2006 года
3A3-968M
1.2K / / 22.12.2005
Ну или так:

ListView1.View = View.Details;
ListView1.Width = 270;
ListView1.Location = new System.Drawing.Point(10, 10);

// Создаём колонки
ColumnHeader header1 = new ColumnHeader(),
header2 = new ColumnHeader();

// Выставляем свойства
header1.Text = "File name";
header1.TextAlign = HorizontalAlignment.Left;
header1.Width = 70;

header2.TextAlign = HorizontalAlignment.Left;
header2.Text = "Location";
header2.Width = 200;

// Добавляем колонки в listview
ListView1.Columns.Add(header1);
ListView1.Columns.Add(header2);

// Заполняем колонки
// Колонки заполняем jpg файлами в этой директории
System.IO.DirectoryInfo dirInfo =
new System.IO.DirectoryInfo(
"C:\\Documents and Settings\\All Users" +
"\\Documents\\My Pictures\\Sample Pictures");

System.IO.FileInfo[] files = dirInfo.GetFiles("*.jpg");
if (files != null)
{
foreach ( System.IO.FileInfo file in files )
{
ListViewItem item = new ListViewItem(file.Name);
item.SubItems.Add(file.FullName);
ListView1.Items.Add(item);
}
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог