none
Icone no Listview / Imagens embutidas!!! RRS feed

  • Pergunta

  • Olá gente,

    Eu perguntei a um tempo atras se daria pra colocar icones no listview, e me foi informado q havia como se colocasse no 1º subitem, mas eu ate hj naum consegui colocar, alguem pode me informar como?

    e outra perguntinha, eu tenho um programa q usa muita imgs, existe alguma maneira de colocar essas imgs embutidas no programa? pra naum precisar distribui-las em pastas separadas, e tbm pra elas naum ficarem expostas ao usuário?

     

    obrigado gente!

    terça-feira, 6 de março de 2007 12:41

Respostas

  • Slayer,

    1) Para colocar uma imagem num ListView, pegue um ImageList no ToolBox e adicione ao seu form. Então adicione as imagens que desejar no ImageList. No ListView, mude a propriedade a SmallImageList para apontar o seu ImageList. Ao adicionar uma imagem no ListView, você pode informar o indice da imagem que deseja exibir no ListView:

    seuListView.Items.Add("Texto", indiceDoIconeNoImageList);

    2) Sim, você pode adicionar as imagem como resources do seu projeto. Dê um duplo clique em Properties, vá até a aba Resources, selecione no primeiro combo no topo da tela Images ou Icons e adicione as imagens que desejar ao projeto. Para utilizá-las então:

    Properties.Resources.NomeDoRecurso

    Abraços,
    Francisco
    OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

     

    terça-feira, 6 de março de 2007 12:54
    Moderador

Todas as Respostas

  • 1) Adicione um ImageList ao projeto.

    2) Inclua os ícones que quiser.

    3) Associe a propriedade SmallIcons do ListView ao ImageList:

    listView1.SmallImageList = imageList1;

    4) Quando incluir novos elementos no ListView, passe o índice da imagem no ImageList associado àquele item como segundo parâmetro do construtor:

    listView1.Items.Add(i.ToString(), 0);

    Ou ajuste a propriedade ImageIndex do item.

    Também há como se incluir imagens em subitens:

    http://www.codeproject.com/cs/miscctrl/OAKListView.asp

    Note nos comentarios (Fix for .NET 2.0) do último link uma modificação necessária para o exemplo funcionar com o Framework 2.0.

    • Sugerido como Resposta marcelocamposs quarta-feira, 30 de maio de 2012 19:35
    terça-feira, 6 de março de 2007 12:51
  • Slayer,

    1) Para colocar uma imagem num ListView, pegue um ImageList no ToolBox e adicione ao seu form. Então adicione as imagens que desejar no ImageList. No ListView, mude a propriedade a SmallImageList para apontar o seu ImageList. Ao adicionar uma imagem no ListView, você pode informar o indice da imagem que deseja exibir no ListView:

    seuListView.Items.Add("Texto", indiceDoIconeNoImageList);

    2) Sim, você pode adicionar as imagem como resources do seu projeto. Dê um duplo clique em Properties, vá até a aba Resources, selecione no primeiro combo no topo da tela Images ou Icons e adicione as imagens que desejar ao projeto. Para utilizá-las então:

    Properties.Resources.NomeDoRecurso

    Abraços,
    Francisco
    OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

     

    terça-feira, 6 de março de 2007 12:54
    Moderador
  • obrigado, vou testar =]
    terça-feira, 6 de março de 2007 13:07
  •  

    E se precisar mudarl algum icone depois do listview estiver preenchido?
    quarta-feira, 2 de abril de 2008 19:57
  • ListView1.Items.Add(ListViewCliente)
        ListView1.Items.Add(ListViewCliente.ToString(), 0)

     

    Tenho duas imgs no meu imagelist e quero uma condicional no meu bd quando o seu valor for "Morango" quero qe a respectiva imagem desse apareça e quando for o "Abacaxi" seja a outra imagem ._.

     

     

    tem como?]

     

    obrigada :D

    quinta-feira, 14 de abril de 2011 14:28
  • conexao.Open()
    
      Try
    
       ListViewteste.Columns.Clear()
       ListViewteste.Items.Clear()
    
       Reader = command.ExecuteReader
    
       Dim i As Integer = 0
       Do While (i < Reader.FieldCount)
        Dim ColumnHeader As ColumnHeader = New ColumnHeader
        ColumnHeader.Text = Reader.GetName(i)
        ListViewteste.Columns.Add(ColumnHeader)
    
        i = (i + 1)
       Loop
    
       Dim ListViewItemPedidos As ListViewItem
       While Reader.Read
        ListViewItemPedidos = New ListViewItem
        ListViewItemPedidos.Text = Reader.GetValue(0).ToString
    
    
        Dim i1 As Integer = 1
        Do While (i1 < Reader.FieldCount)
    
         ListViewItemPedidos.SubItems.Add(Reader.GetValue(i1).ToString)
    
         i1 = (i1 + 1)
    
    
        Loop
    
        ListViewteste.Items.Add(ListViewteste.ToString(), 0)
        ListViewteste.Items.Add(ListViewItemPedidos)
    
    
       End While
       Reader.Close()
      Catch ex As Exception
       conexao.Close()
       MsgBox(ex.Message)
    
      End Try
    
    
    

    O Resultado disso é:

     

    1ª Linha:

    Imagem, mas sem dados

    2ª Linha:

    Sem imagem, com dados

     

     

     

    e por ai vai... intercalando imagem sem dados com dados sem imagem


    quinta-feira, 14 de abril de 2011 16:08