Browse Source

Scroll behind nr of TreeEntrys

pull/19/head
PeterForstmeier 15 years ago
parent
commit
aaf26735f9
  1. 12
      src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml
  2. 23
      src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml.cs

12
src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml

@ -61,12 +61,12 @@
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
Background="LightGray"></GridSplitter> Background="LightGray"></GridSplitter>
<ScrollViewer Name="scrollViewer" <ScrollViewer Name="scrollViewer"
Grid.Column="2" Grid.Column="2"
Grid.Row="2" Grid.Row="2"
CanContentScroll="True" CanContentScroll="True"
VerticalScrollBarVisibility="Visible" VerticalScrollBarVisibility="Visible"
HorizontalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"
ScrollChanged="ScrollViewer_ScrollChanged"> ScrollChanged="ScrollViewer_ScrollChanged">
<Controls:DependencyMatrixControl <Controls:DependencyMatrixControl
x:Name="matrixControl" /> x:Name="matrixControl" />
</ScrollViewer> </ScrollViewer>

23
src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml.cs

@ -65,29 +65,34 @@ namespace ICSharpCode.CodeQualityAnalysis.Controls
topScrollViewer = Helper.FindVisualChild<ScrollViewer>(topTree); topScrollViewer = Helper.FindVisualChild<ScrollViewer>(topTree);
} }
void OnHoverChanged (object sender ,HoveredCellEventArgs <Relationship> e) void OnHoverChanged (object sender ,HoveredCellEventArgs <Relationship> e)
{ {
var leftNode = leftTree.Items[e.HoveredCell.RowIndex] as DependecyTreeNode; if (e.HoveredCell.RowIndex < leftTree.Items.Count) {
leftTree.SelectedItem = leftNode; var leftNode = leftTree.Items[e.HoveredCell.RowIndex] as DependecyTreeNode;
leftTree.FocusNode(leftNode); leftTree.SelectedItem = leftNode;
leftTree.FocusNode(leftNode);
var topNode = topTree.Items[e.HoveredCell.ColumnIndex] as DependecyTreeNode; }
topTree.SelectedItem = topNode; if (e.HoveredCell.ColumnIndex < topTree.Items.Count )
topTree.FocusNode(topNode); {
var topNode = topTree.Items[e.HoveredCell.ColumnIndex] as DependecyTreeNode;
topTree.SelectedItem = topNode;
topTree.FocusNode(topNode);
}
} }
void LeftTree_ScrollChanged(object sender, ScrollChangedEventArgs e) void LeftTree_ScrollChanged(object sender, ScrollChangedEventArgs e)
{ {
// Console.WriteLine("Left TreeScroll"); // Console.WriteLine("Left TreeScroll");
scrollViewer.ScrollToVerticalOffset(e.VerticalOffset * matrixControl.CellHeight); // scrollViewer.ScrollToVerticalOffset(e.VerticalOffset * matrixControl.CellHeight);
Console.WriteLine("--"); Console.WriteLine("--");
} }
void TopTree_ScrollChanged(object sender, ScrollChangedEventArgs e) void TopTree_ScrollChanged(object sender, ScrollChangedEventArgs e)
{ {
// Console.WriteLine("Top TreeScroll "); // Console.WriteLine("Top TreeScroll ");
scrollViewer.ScrollToHorizontalOffset(e.VerticalChange * matrixControl.CellHeight); // scrollViewer.ScrollToHorizontalOffset(e.VerticalChange * matrixControl.CellHeight);
Console.WriteLine("--"); Console.WriteLine("--");
} }

Loading…
Cancel
Save