diff --git a/src/Avalonia.Controls/TextBox.cs b/src/Avalonia.Controls/TextBox.cs index 408e837043..c8e37c132a 100644 --- a/src/Avalonia.Controls/TextBox.cs +++ b/src/Avalonia.Controls/TextBox.cs @@ -431,6 +431,7 @@ namespace Avalonia.Controls _undoRedoHelper = new UndoRedoHelper(this); _selectedTextChangesMadeSinceLastUndoSnapshot = 0; _hasDoneSnapshotOnce = false; + UpdateCommandStates(); UpdatePseudoclasses(); } diff --git a/tests/Avalonia.Controls.UnitTests/TextBoxTests.cs b/tests/Avalonia.Controls.UnitTests/TextBoxTests.cs index 39dd5efa1d..b8e781840f 100644 --- a/tests/Avalonia.Controls.UnitTests/TextBoxTests.cs +++ b/tests/Avalonia.Controls.UnitTests/TextBoxTests.cs @@ -1549,6 +1549,19 @@ namespace Avalonia.Controls.UnitTests } } + [Fact] + public void Empty_TextBox_Initializes_Clipboard_Command_States() + { + using (UnitTestApplication.Start(Services)) + { + var tb = new TextBox(); + + Assert.False(tb.CanCopy); + Assert.False(tb.CanCut); + Assert.True(tb.CanPaste); + } + } + [Fact] public void Command_States_Update_When_ReadOnly_And_PasswordChar_Change() {