Toon posts:

[WPF C#] treeview met image

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik ben bezig met mijn stage en zit al uren vast op volgend probleem

ik wil een treeview maken die lijkt op windows explorer, waarbij ieder element een andere image heeft afhankelijk van of het een folder, drive of bestand is. maar aangezien ik deze lijst dynamisch moet invullen en dus niet via XAML omdat er altijd files kunnen bijkomen of verwijderd worden, zou ik geen idee hebben hoe ik een afbeelding aan een treeview kan toevoegen. ik heb al gezocht op icon, image, header, headertemplate, maar ik kom er niet uit...


kan iemand helpen?

bedankt

Acties:
  • 0 Henk 'm!

  • beany
  • Registratie: Juni 2001
  • Laatst online: 17:30

beany

Meeheheheheh

http://www.c-sharpcorner....231544PM/WPFTreeView.aspx

Hier wordt het uitgelegd met XAML. Maar alles wat je in XAML kan, kan je ook in code.

<Label /> == new Label();

Even goed de documentatie voor het treeviewcontrol lezen en dan zou je eruit moeten kunnen komen.

En misschien even wat code posten wat je zelf tot nu toe hebt geprobeerd? Dan kunnen we je beter helpen ipv klakkeloos een voorbeeld code te posten.

Dagelijkse stats bronnen: https://x.com/GeneralStaffUA en https://www.facebook.com/GeneralStaff.ua


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
de icons zouden dan onder de header en stackpanel moeten zitten, maar daar geraak je niet, je kan een header zetten met text, maar geen image meegeven. ik heb al meerdere dingen van internet geprobeerd, maar nergens is een werkende oplossing te vinden

Acties:
  • 0 Henk 'm!

  • beany
  • Registratie: Juni 2001
  • Laatst online: 17:30

beany

Meeheheheheh

code:
1
2
3
4
5
6
7
8
9
10
<TreeViewItem Name="Child1">
        <TreeViewItem.Header>
            <CheckBox Name="CoffieCheckBox">
                <StackPanel Orientation="Horizontal">
                    <Image Source="coffie.jpg" Height="30"></Image>
                    <TextBlock Text="Coffie"></TextBlock>
                </StackPanel>
            </CheckBox>
        </TreeViewItem.Header>
</TreeViewItem>

Ik zie het probleem niet echt??

Laat dan eens wat code van je zien?

Dagelijkse stats bronnen: https://x.com/GeneralStaffUA en https://www.facebook.com/GeneralStaff.ua


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
dat heeft niet veel nut aangezien ik heel de tijd aan het experimenteren ben geweest, maar ik zie nergens iets dat ook maar te maken heeft met het toevoegen van images/icons, niet in de header classe, niet in de stackpanel, niet in de treeview of treeviewitem. het staat er gewoon niet tussen.

een code snippet gaat echt geen nut hebben aangezien ik al uren aan het proberen ben

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Je kan toch gewoon een Image toevoegen in een Template zoals beany aangeeft
XML:
1
<Image Source="coffie.jpg" Height="30"></Image>

Eventueel zou je in code, of via data-binding/converters verschillende images kunnen kiezen.

[ Voor 24% gewijzigd door Woy op 31-03-2009 13:51 ]

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
het probleem is, is dat ik op voorhand niet weet wat een folder is en wat een file of een drive is, dus ik kan de opmaak niet in XAML maken, enkel via de code-behind... of zie ik iets over het hoofd? en wat bedoel je met converters? hier ben ik niet echt in thuis als student zijnde...

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Verwijderd schreef op dinsdag 31 maart 2009 @ 13:54:
het probleem is, is dat ik op voorhand niet weet wat een folder is en wat een file of een drive is, dus ik kan de opmaak niet in XAML maken, enkel via de code-behind... of zie ik iets over het hoofd? en wat bedoel je met converters? hier ben ik niet echt in thuis als student zijnde...
Je kan toch gewoon DataTemplates gebruiken? Dus dan heb je voor een File een ander template dan voor een Directory.

Voor converters zou je eens naar de documentatie van IValueConverter kunnen kijken, of wat tutorials opzoeken die daar over gaan.

In het kort komt het erop neer dat de waarde die je normaal aan een property bind eerst door een stuk code gevoerd word, en dus een andere output heeft. Als je dus bind aan het Type (Directory/File) kun je de converter het juiste image uit laten spugen.

[ Voor 27% gewijzigd door Woy op 31-03-2009 14:08 ]

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • beany
  • Registratie: Juni 2001
  • Laatst online: 17:30

beany

Meeheheheheh

Of je kan een class baseren op TreeViewItem en daarin opnemen dat je een Text en een Image kan aangeven, al vind ik de door Woy aangegeven DataTemplate een veel mooiere oplossing.

Kortom: oplossingen genoeg.

Dagelijkse stats bronnen: https://x.com/GeneralStaffUA en https://www.facebook.com/GeneralStaff.ua


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Ik vond zo snel even dit voorbeeld hoe je HierarchicalDataTemplates moet gebruiken: http://www.dev102.blogspo...ical-datatemplate-in.html

Je kan dus filteren op het Type.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”

Pagina: 1