Как я уже говорил несколько раз, управление списка является одним из самых использования при разработке приложений в Visual Basic. NET.
Сегодня я хочу показать способ получить больше от этого контроля, а также оставить гораздо более привлекательными, создавая группы и использование фонового изображения.
Например нам нужно: форма и списка. Должно выглядеть как на рисунке ниже:

Для отображения результатов нам нужны данные, а для этого я создал DataTable в памяти, и наполнил ее четыре записи. Поля Имя, Фамилия, телефон и место.
Я хочу показать в этом примере список людей, с их именами и телефонами сгруппированы по месту расположения. Первый анализ следующий код, если вы хотите попробовать, чтобы увидеть, как она работает, и тогда я расскажу несколько вещей.
Dim DT As New DataTable dt.Columns.Add ("Name") dt.Columns.Add ("Name") dt.Columns.Add ("Телефон") dt.Columns.Add ("Город") Dim др. В DataRow = dt.NewRow д-р ("Name") = "John" д-р ("Name") = "Smith" д-р ("Телефон") = "4587-9546" д-р ("Location") = "Морон" dt.Rows.Add (DR) д-р = dt.NewRow д-р ("Name") = "Марсело" д-р ("Name") = "Роланд" д-р ("Телефон") = "7415-8945" д-р ("Location") = "Морон" dt.Rows.Add (DR) д-р = dt.NewRow д-р ("Name") = "Хавьер" д-р ("Name") = "Мартинес" д-р ("Телефон") = "4567-9654" д-р ("Location") = "Castelar" dt.Rows.Add (DR) д-р = dt.NewRow д-р ("Name") = "Эстеван" д-р ("Name") = "Васкес" д-р ("Телефон") = "9452-4515" д-р ("Location") = "Castelar" dt.Rows.Add (DR) ListView1.FullRowSelect = True ListView1.MultiSelect = False Dim As String = grupoActual String.Empty Dim г в качестве новой ListViewGroup Для каждого г как DataRow в dt.Rows Если г ("Город"). ToString <> Затем grupoActual Новые ListViewGroup г = (г ("Город"). ToString) grupoActual = г ("Город"). ToString ListView1.Groups.Add (г) End If Dim элемент в качестве новой ListViewItem ("") item.SubItems.Add (г ("Name"). ToString) item.SubItems.Add (Г ("Last Name"). ToString) item.SubItems.Add (г («Телефон»). ToString) item.Group = г ListView1.Items.Add (пункт) Следующий
Ну, первые строчки относятся к созданию DataTable и заполнение данных и не буду комментировать. Сконцентрируйтесь на том, как заполнить списка.
Сначала создайте для каждого цикла по всем записям в таблице у меня в памяти. Затем я создаю текстовый переменной (grupoActual), чтобы сохранить имя группы (последнее, что я добавил списка), и я также думаю, что объект ListViewGroup (г). Первое, что мне делать, чтобы встать на учет является назначение участка (который лежит в сфере я хочу работать в группе) ListView1 и сохранить эти данные в переменной grupoActual для будущих сравнений. Затем взимать ListViewItem как всегда в отличие от отметил, что этот пункт относится к группе "G", добавил пункт ListView1 и готово. Проходя через другие документы и выполнять сравнение только создать новую группу при изменении города.
Результат будет выглядеть так:

Теперь все выглядит лучше, я рекомендую создать изображение для фона. Я думаю, что я упоминал, что я предпочитаю Photoshop, но вы можете использовать любой графический редактор для создания JPG для использования в фоновом режиме. Обратите внимание, что цвета не должны быть очень сильными, потому что это difilcultará чтения данных.
Здесь я оставляю образ, который я использую в этом примере:
Чтобы его использовать, просто из свойств списка, найти BackgroundImage и добавьте изображение, как показано ниже:

и вы также должны изменить свойство Правда и готовы BackgroundImageTiled. Я покажу конечный результат:

Вот это, я надеюсь, что они служат.
Информация Bitacoras.com ...
Ставка в Bitacoras.com: Как я уже говорил несколько раз, управления списка является одним из самых использования при разработке приложения в Visual Basic Net.. Сегодня я хочу показать способ получить больше от этого контроля, а также Деж ...
Отличный пример другого типа использования списка.
мия вопрос, и я искал везде, прежде чем спрашивать, как включить кластерных распечатать списка.
спасибо
Эй, как насчет мой вопрос ...
И, как это делает, чтобы ходить по группе списка на группы?
Здравствуйте, я хотела бы знать, как сделать, чтобы удалить выбранный элемент списка.
Спасибо.
это очень хороший пример, я ставлю на практике, но у меня есть проблема, например: мой группы пользователей модуля.
Мой вопрос: Как я показываю второй группы?
Например, в вашем примере вы разместите вы item.group = г
Что делать, если я хочу, чтобы показать ч группу в колонке подпунктов?
Кость показать мне пользователя (группы) по модулю (в другой группе), а затем все остальное.
Я ценю Ваше время и наилучшими пожеланиями.
как я могу подключить списка с доступом ¿?
Я показываю, что данные в каждом столбце BD
В последней строке = listView1.Items.Add (пункт) я получаю следующую ошибку:
Невозможно добавить или вставить элемент "более чем в одном месте. Необходимо удалить его из текущего местоположения или клонировать его.
Имя параметра: пункт.
Я тестирования. Net 2008, потому что это ошибка?
Извините, что я vb.NET зонд в 2008 году и не работает.
Федерико: Когда я сделал этот пост, примеров я сделал с помощью Visual Studio 2008 и они работают. Я советую вам попробовать еще раз обратить внимание на шаги.
Удачи.
доброе утро, привет! хотелось бы знать, как группа клеток сделает списка, и этот контроль не слияние собственности. Ожидание делает мне объяснить.
=)
Привет хороший вклад сослужила мне хорошую службу,
Но я знал или мог бы помочь мне разобраться в каждой группе для реализации проекта, я разработал через
заранее через