c# Чат??

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by arthurfok, 12 Jul 2012.

  1. arthurfok

    arthurfok New Member

    Joined:
    3 Jul 2011
    Messages:
    23
    Likes Received:
    0
    Reputations:
    0
    Я пытаюсь написать Чат-программу , и у меня возник вопрос.
    Можно ли как нибудь в listbox ставить картинку (иконку статуса, т.е. типа онлайн/оффлайн) в месте с текстом??
    То есть что то вроде этого:

    [Аватар] [НИК] [СТАТУС]
    [Аватар] [НИК] [СТАТУС]
    [Аватар] [НИК] [СТАТУС]
    ...
    [Аватар] [НИК] [СТАТУС]
    --------------------------------------------
    То есть контакт лист, как в Скайпе.
    если с listbox-ом никак, то что посоветуйте?
    как и чем это реализовать ?
    Заранее Спасибо.
     
  2. seosimf

    seosimf Member

    Joined:
    3 Mar 2011
    Messages:
    271
    Likes Received:
    44
    Reputations:
    6
    Вопрос по WinForm(WPF) причем тут чат?
    Если используется WPF то можно через DataTemplate это реализовать, если WinForm то только свой контрол с OnDrawItem или подписаться на соответствующие события и ListBox.DrawMode = DrawMode.OwnerDrawFixed что фактически не сильно отличается.
    Гораздо проще использовать ListView с View=List.
     
    #2 seosimf, 12 Jul 2012
    Last edited: 12 Jul 2012
  3. Spot

    Spot Elder - Старейшина

    Joined:
    1 Mar 2007
    Messages:
    461
    Likes Received:
    38
    Reputations:
    1
    Я бы тоже посоветовал ListoBox(еслими конечно у тебя Wpf), даже дам сцыль в которой показывается как добавлять айтемы с названием +картинкой:
    ТЫЦ
     
  4. tester_new

    tester_new Elder - Старейшина

    Joined:
    12 Feb 2012
    Messages:
    300
    Likes Received:
    45
    Reputations:
    24
    Можешь также попробовать рисовать просто поверх ListBox или что там у тебя...
     
  5. Spot

    Spot Elder - Старейшина

    Joined:
    1 Mar 2007
    Messages:
    461
    Likes Received:
    38
    Reputations:
    1
    Рисовать поверх?Что за глупость, ты бы прочитал задание повнимательней, ему нужно сделать, что то вроде небольшого чата, где напротив ника будет выводиться иконка. Само собой это все будет двигаться по мере обмена в чате сообщениями. Теперь внимание вопрос: Зачем рисовать поверх окна, если прийдёться каждый раз перерисовывать, причем нужно будет перерисовывать иконка в правильном месте относительно окна?
    В листбокс можно втиснуть и иконку и время в которое было отправлено/получено сообщение и сам текст сообщения.
    То, что ты предложил - все равно что забивать гвозди микроскопом - да можно, но нафига?
     
  6. arthurfok

    arthurfok New Member

    Joined:
    3 Jul 2011
    Messages:
    23
    Likes Received:
    0
    Reputations:
    0
    Спасибо за ответы.
    Spot,
    Тип моего проекта Win Form Application а не WPF