@@ -185,7 +185,7 @@ await cut.InvokeAsync(() =>
185185 [ Theory ]
186186 [ InlineData ( InsertRowMode . First ) ]
187187 [ InlineData ( InsertRowMode . Last ) ]
188- public void Items_EditForm_Add ( InsertRowMode insertMode )
188+ public async Task Items_EditForm_Add ( InsertRowMode insertMode )
189189 {
190190 var updated = false ;
191191 var localizer = Context . Services . GetRequiredService < IStringLocalizer < Foo > > ( ) ;
@@ -206,7 +206,7 @@ public void Items_EditForm_Add(InsertRowMode insertMode)
206206 } ) ;
207207 } ) ;
208208 var table = cut . FindComponent < Table < Foo > > ( ) ;
209- _ = table . Instance . AddAsync ( ) ;
209+ await cut . InvokeAsync ( table . Instance . AddAsync ) ;
210210 Assert . True ( updated ) ;
211211 Assert . Equal ( 2 , table . Instance . Rows . Count ) ;
212212 }
@@ -6046,6 +6046,35 @@ public async Task DynamicContext_Add()
60466046 await cut . InvokeAsync ( ( ) => delete . Instance . OnConfirm ( ) ) ;
60476047 }
60486048
6049+ [ Fact ]
6050+ public async Task IsKeepSelectedRowAfterAdd_Ok ( )
6051+ {
6052+ var localizer = Context . Services . GetRequiredService < IStringLocalizer < Foo > > ( ) ;
6053+ var items = Foo . GenerateFoo ( localizer , 2 ) ;
6054+ var cut = Context . RenderComponent < BootstrapBlazorRoot > ( pb =>
6055+ {
6056+ pb . AddChildContent < Table < DynamicObject > > ( pb =>
6057+ {
6058+ pb . Add ( a => a . RenderMode , TableRenderMode . Table ) ;
6059+ pb . Add ( a => a . IsMultipleSelect , true ) ;
6060+ pb . Add ( a => a . IsKeepSelectedRowAfterAdd , true ) ;
6061+ pb . Add ( a => a . DynamicContext , CreateDynamicContext ( localizer ) ) ;
6062+ } ) ;
6063+ } ) ;
6064+
6065+ var table = cut . FindComponent < Table < DynamicObject > > ( ) ;
6066+
6067+ // 选中第一行数据
6068+ var input = cut . Find ( "tbody .form-check-input" ) ;
6069+ await cut . InvokeAsync ( ( ) => input . Click ( ) ) ;
6070+ var selectedRow = table . Instance . SelectedRows . FirstOrDefault ( ) ;
6071+ Assert . NotNull ( selectedRow ) ;
6072+
6073+ await cut . InvokeAsync ( ( ) => table . Instance . AddAsync ( ) ) ;
6074+ selectedRow = table . Instance . SelectedRows . FirstOrDefault ( ) ;
6075+ Assert . NotNull ( selectedRow ) ;
6076+ }
6077+
60496078 [ Fact ]
60506079 public async Task DynamicContext_Edit ( )
60516080 {
0 commit comments