Skip to content

Commit b6ac898

Browse files
committed
Rewrite UI to use DataGrid
1 parent 489038d commit b6ac898

File tree

1 file changed

+22
-27
lines changed

1 file changed

+22
-27
lines changed

RetailCoder.VBE/UI/CodeMetrics/CodeMetricsControl.xaml

Lines changed: 22 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -137,14 +137,14 @@
137137
MinHeight="20"
138138
PreviewKeyDown="SearchBox_OnPreviewKeyDown"
139139
TextChanged="SearchBox_OnTextChanged" />
140-
140+
141141
<Image Source="{StaticResource SearchImage}"
142142
HorizontalAlignment="Right" VerticalAlignment="Center"
143143
MaxHeight="16" Margin="0,0,1,0"
144144
IsEnabled="{Binding CanSearch}"
145145
Visibility="{Binding ElementName=SearchBox, Path=Text.Length, Converter={StaticResource StringHasValueToVisibility}}"
146146
MouseDown="SearchIcon_OnMouseDown" />
147-
147+
148148
<Button Style="{StaticResource XButtonStyle}"
149149
HorizontalAlignment="Right" VerticalAlignment="Center"
150150
Height="18" Width="18" Margin="0,1,1,0"
@@ -155,31 +155,26 @@
155155
</Border>
156156
<controls:EmptyUIRefresh Grid.Row="2" />
157157

158-
<TreeView ItemsSource="{Binding ModuleMetrics}" Grid.Row="2" >
159-
<TreeView.ItemTemplate>
160-
<HierarchicalDataTemplate>
161-
<Grid>
162-
<TextBlock Grid.Column="0" Grid.Row="0" Text="{Binding Path=ModuleName}"/>
163-
<TextBlock Grid.Column="1" Grid.Row="0" Text="{Binding Path=Result.Lines}" />
164-
<TextBlock Grid.Column="2" Grid.Row="0" Text="{Binding Path=Result.CyclomaticComplexity}" />
165-
<TextBlock Grid.Column="3" Grid.Row="0" Text="{Binding Path=Result.MaximumNesting}" />
166-
167-
<ListView Grid.ColumnSpan="4" Grid.Row="1" ItemsSource="{Binding Path=MemberResults}">
168-
<ListView.ItemTemplate>
169-
<DataTemplate>
170-
<Grid>
171-
<TextBlock Grid.Column="0" Text="{Binding Path=Key}"/>
172-
<TextBlock Grid.Column="1" Text="{Binding Path=Value.Lines}" />
173-
<TextBlock Grid.Column="2" Text="{Binding Path=Value.CyclomaticComplexity}" />
174-
<TextBlock Grid.Column="3" Text="{Binding Path=Value.MaximumNesting}" />
175-
</Grid>
176-
</DataTemplate>
177-
</ListView.ItemTemplate>
178-
</ListView>
179-
</Grid>
180-
</HierarchicalDataTemplate>
181-
</TreeView.ItemTemplate>
182-
</TreeView>
158+
<DataGrid Grid.Row="2" ItemsSource="{Binding ModuleMetrics}" AutoGenerateColumns="False">
159+
<DataGrid.Columns>
160+
<DataGridTextColumn Binding="{Binding Path=ModuleName}" Header="Declaration" Width="*"/>
161+
<DataGridTextColumn Binding="{Binding Path=Result.Lines}" Header="Lines" Width="Auto"/>
162+
<DataGridTextColumn Binding="{Binding Path=Result.CyclomaticComplexity}" Header="Cyclomatic Complexity" Width="Auto"/>
163+
<DataGridTextColumn Binding="{Binding Path=Result.MaximumNesting}" Header="Nesting Level" Width="Auto"/>
164+
</DataGrid.Columns>
165+
<DataGrid.RowDetailsTemplate>
166+
<DataTemplate>
167+
<DataGrid ItemsSource="{Binding Path=MemberResults}" AutoGenerateColumns="False">
168+
<DataGrid.Columns>
169+
<DataGridTextColumn Header="Declaration" Binding="{Binding Path=Key.IdentifierName}" Width="*"/>
170+
<DataGridTextColumn Header="Lines" Binding="{Binding Path=Value.Lines}" Width="Auto"/>
171+
<DataGridTextColumn Header="Cyclomatic Complexity" Binding="{Binding Path=Value.CyclomaticComplexity}" Width="Auto"/>
172+
<DataGridTextColumn Header="Nesting Level" Binding="{Binding Path=Value.MaximumNesting}" Width="Auto"/>
173+
</DataGrid.Columns>
174+
</DataGrid>
175+
</DataTemplate>
176+
</DataGrid.RowDetailsTemplate>
177+
</DataGrid>
183178
<controls:BusyIndicator Grid.Row="2" Width="120" Height="120" Visibility="{Binding IsBusy, Converter={StaticResource BoolToVisibility}}" />
184179
</Grid>
185180
</UserControl>

0 commit comments

Comments
 (0)