Skip to content

Commit c3746ec

Browse files
use gridview to show columns
1 parent 37c7b36 commit c3746ec

File tree

7 files changed

+175
-356
lines changed

7 files changed

+175
-356
lines changed

src/MainDemo.Wpf/Trees.xaml

Lines changed: 111 additions & 145 deletions
Large diffs are not rendered by default.

src/MaterialDesignThemes.Wpf/Converters/TreeListViewGridLineBrushConverter.cs

Lines changed: 0 additions & 23 deletions
This file was deleted.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
using System.Globalization;
2+
using System.Windows.Data;
3+
4+
namespace MaterialDesignThemes.Wpf.Converters;
5+
6+
internal class ViewIsGridViewConverter : IValueConverter
7+
{
8+
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
9+
{
10+
// Returns true if value is a GridView, otherwise false
11+
return value is GridView;
12+
}
13+
14+
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
15+
{
16+
throw new NotSupportedException();
17+
}
18+
}

src/MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.TreeListView.xaml

Lines changed: 43 additions & 167 deletions
Large diffs are not rendered by default.

src/MaterialDesignThemes.Wpf/TreeListView.cs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,8 @@
66
namespace MaterialDesignThemes.Wpf;
77

88
//TODO: Implement bindable property for getting selected items
9-
//TODO: Implement GridView support for having columns
109
public class TreeListView : ListView
1110
{
12-
public GridViewColumnCollection Columns
13-
{
14-
get => (GridViewColumnCollection)GetValue(ColumnsProperty);
15-
set => SetValue(ColumnsProperty, value);
16-
}
17-
18-
public static readonly DependencyProperty ColumnsProperty =
19-
DependencyProperty.Register(nameof(Columns), typeof(GridViewColumnCollection), typeof(TreeListView), new UIPropertyMetadata(null));
20-
2111
public double LevelIndentSize
2212
{
2313
get => (double)GetValue(LevelIndentSizeProperty);

src/MaterialDesignThemes.Wpf/TreeListViewCell.cs

Lines changed: 0 additions & 10 deletions
This file was deleted.

src/MaterialDesignThemes.Wpf/TreeListViewItem.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ public override void OnApplyTemplate()
138138
{
139139
base.OnApplyTemplate();
140140
ContentPresenter = GetTemplateChild(ContentPresenterPart) as TreeListViewContentPresenter;
141-
141+
142142
if (ContentPresenter is { } contentPresenter)
143143
{
144144
WeakEventManager<TreeListViewContentPresenter, EventArgs>.AddHandler(
@@ -149,6 +149,8 @@ void OnTemplateChanged(object? sender, EventArgs e)
149149
PrepareTreeListViewItem(Content, TreeListView!, Level, IsExpanded);
150150
}
151151
}
152+
153+
PrepareTreeListViewItem(Content, TreeListView!, Level, IsExpanded);
152154
}
153155

154156
internal void ClearTreeListViewItem(object _, TreeListView __)

0 commit comments

Comments
 (0)