@@ -876,43 +876,70 @@ public async Task Esc_Ok()
876
876
[ Fact ]
877
877
public async Task KeyBoard_Ok ( )
878
878
{
879
- var items = TreeFoo . GetTreeItems ( ) ;
879
+ List < TreeFoo > data =
880
+ [
881
+ new ( ) { Text = "1010" , Id = "1010" } ,
882
+ new ( ) { Text = "1020" , Id = "1020" } ,
883
+ new ( ) { Text = "1030" , Id = "1030" } ,
884
+
885
+ new ( ) { Text = "1020-01" , Id = "1020-01" , ParentId = "1020" } ,
886
+ new ( ) { Text = "1020-02" , Id = "1020-02" , ParentId = "1020" } ,
887
+
888
+ new ( ) { Text = "1020-02-01" , Id = "1020-02-01" , ParentId = "1020-02" } ,
889
+ new ( ) { Text = "1020-02-02" , Id = "1020-02-02" , ParentId = "1020-02" } ,
890
+
891
+ new ( ) { Text = "1020-02-02-01" , Id = "1020-02-02-01" , ParentId = "1020-02-02" } ,
892
+ new ( ) { Text = "1020-02-02-02" , Id = "1020-02-02-02" , ParentId = "1020-02-02" }
893
+ ] ;
894
+
895
+ var items = TreeFoo . CascadingTree ( data ) ;
880
896
items [ 0 ] . IsActive = true ;
881
897
items [ 1 ] . IsExpand = true ;
882
898
items [ 1 ] . Items [ 1 ] . IsExpand = true ;
883
899
items [ 1 ] . Items [ 1 ] . Items [ 1 ] . IsExpand = true ;
900
+
901
+ var activeItemText = "1010" ;
884
902
var cut = Context . RenderComponent < TreeView < TreeFoo > > ( pb =>
885
903
{
886
904
pb . Add ( a => a . EnableKeyboardArrowUpDown , true ) ;
887
905
pb . Add ( a => a . Items , items ) ;
906
+ pb . Add ( a => a . OnTreeItemClick , new Func < TreeViewItem < TreeFoo > , Task > ( treeViewItem =>
907
+ {
908
+ activeItemText = treeViewItem . Text ;
909
+ return Task . CompletedTask ;
910
+ } ) ) ;
888
911
} ) ;
889
912
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
890
913
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
891
914
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
915
+
892
916
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
893
917
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
894
918
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
919
+
895
920
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
896
921
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
897
922
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
923
+
898
924
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
899
925
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
900
- await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowDown" ) ) ;
901
-
926
+ Assert . Equal ( "1030" , activeItemText ) ;
902
927
903
-
904
- await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
905
928
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
906
929
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
907
930
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
931
+
908
932
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
909
933
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
910
934
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
935
+
911
936
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
912
937
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
913
938
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
939
+
914
940
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
915
941
await cut . InvokeAsync ( ( ) => cut . Instance . TriggerKeyDown ( "ArrowUp" ) ) ;
942
+ Assert . Equal ( "1010" , activeItemText ) ;
916
943
}
917
944
918
945
class MockTree < TItem > : TreeView < TItem > where TItem : class
0 commit comments