We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. (Last updated on: November 16, 2018).
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Databinding TreeView with MVVM

Thread ID:





96623 Sep 23,2010 03:47 AM UTC Jan 5,2011 06:46 PM UTC WPF 3
Tags: Tools
Rafael Soto
Asked On September 23, 2010 03:47 AM UTC

I am trying to bind a view model to the tree view and I can't seem to get it to work. I have looked at all the examples and can't seem to find any working example using MVVM pattern. Here is the xaml

ItemContainerStyle="{StaticResource TreeViewItemStyle2}"
ItemTemplate="{StaticResource FiledataTemplate2}"
MultiColumnEnable="True" AllowMultiSelect="False">

DisplayMemberBinding="{Binding Path=Pieces}"
DisplayMemberBinding="{Binding Path=PackageType}"
DisplayMemberBinding="{Binding Path=ShortDesciption}"
Width="100" />
DisplayMemberBinding="{Binding Path=Weight}"
Width="50" />
DisplayMemberBinding="{Binding Path=Volume}"
Width="50" />
DisplayMemberBinding="{Binding Path=VolumeWeight}"
Width="50" />
DisplayMemberBinding="{Binding Path=Dimensions}"
Width="100" />
DisplayMemberBinding="{Binding Path=Quantity}"
Width="50" />

In my app.xaml I have

Margin="2,0" />

And my view model looks like this

public class ItemViewModel
bool _isExpanded;
bool _isSelected;

public string Pieces { get; set; }

public string PackageType { get; set; }

public string ShortDesciption { get; set; }

public string Weight { get; set; }

public string Volume { get; set; }

public string VolumeWeight { get; set; }

public string Dimensions { get; set; }

public string Quantity { get; set; }

public ObservableCollection Children { get; set; }

public bool IsExpanded
get { return _isExpanded; }
if (value != _isExpanded)
_isExpanded = value;

// Expand all the way up to the root.
if (_isExpanded && _parent != null)
_parent.IsExpanded = true;

public ItemViewModel(string name)
PackageType = name;
Children = new ObservableCollection();

public void AddChild(string name)
Children.Add(new ItemViewModel(name));

public bool IsSelected
get { return _isSelected; }
if (value != _isSelected)
_isSelected = value;

private ItemViewModel _parent;
public ItemViewModel Parent { get { return _parent; } }

#region INotifyPropertyChanged Members

public event PropertyChangedEventHandler PropertyChanged;

protected virtual void OnPropertyChanged(string propertyName)
if (this.PropertyChanged != null)
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));


Mayavel K [Syncfusion]
Replied On September 29, 2010 01:56 PM UTC

Hi Rafel,

We are able to reproduce the binding issue with MulticolumnTreeViewAdv and logged an issue report internally. However we can't provide the updated assemblies through forum. Since please create the DirectTrac incident for this issue so that we can provide a updated assemblies.

Please let us know if you have any queries.

Mayavel k

Gautier Boder
Replied On December 28, 2010 09:23 AM UTC


Was this new assembly published for all users into the current distribution of Essential Studio? Or this issue is still alive in the widely distributed version?

Thanks for your support

Gautier Boder

Mageshyadav M [Syncfusion]
Replied On January 5, 2011 06:46 PM UTC

Hi Gautier,

Sorry for the delay in getting back to you.

The issue is not in our latest version

Please find the sample demonstrating MVVM sample with TreeViewColumns below,

Bind to Self-Referencing Table Demo2042358590.zip

Please let us know if you have any queries.



This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

Please sign in to access our forum

This page will automatically be redirected to the sign-in page in 10 seconds.

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon