diff --git a/src/BootstrapBlazor.Shared/Samples/AutoFills.razor.cs b/src/BootstrapBlazor.Shared/Samples/AutoFills.razor.cs index b06bad9c5855cb77c911338bc0e566382a7d55f0..ed38a86584c9b2dd898418b20ac6a25e76446463 100644 --- a/src/BootstrapBlazor.Shared/Samples/AutoFills.razor.cs +++ b/src/BootstrapBlazor.Shared/Samples/AutoFills.razor.cs @@ -32,6 +32,7 @@ partial class AutoFills base.OnInitialized(); Items = Foo.GenerateFoo(LocalizerFoo); + Model = Items.First(); } private Task OnSelectedItemChanged(Foo foo) diff --git a/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs b/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs index 82cd3080a7eccef127ffe3328a789cc0adea2c31..328b644fa2f8dc5989322a3505de5ba291723ee8 100644 --- a/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs +++ b/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs @@ -139,6 +139,7 @@ public partial class AutoFill Items ??= Enumerable.Empty(); FilterItems ??= new List(); OnGetDisplayText ??= v => v?.ToString() ?? ""; + InputString = OnGetDisplayText(Value); } /// diff --git a/test/UnitTest/Components/AutoFillTest.cs b/test/UnitTest/Components/AutoFillTest.cs index 1e20382ce1d743a5839efe6202b3aa98c12ca73f..d37bcd670c3fcd0e349222299a287cf5669bef5c 100644 --- a/test/UnitTest/Components/AutoFillTest.cs +++ b/test/UnitTest/Components/AutoFillTest.cs @@ -214,6 +214,19 @@ public class AutoFillTest : BootstrapBlazorTestBase Assert.Equal(2, cut.FindAll(".dropdown-item").Count); } + [Fact] + public void OnGetDisplayText_Ok() + { + var cut = Context.RenderComponent>(pb => + { + pb.Add(a => a.Value, Model); + pb.Add(a => a.Items, Items); + pb.Add(a => a.OnGetDisplayText, foo => foo.Name ?? ""); + }); + var input = cut.Find("input"); + Assert.Equal("张三 1000", input.Attributes["value"]?.Value); + } + [Fact] public void Debounce_Ok() {