2017-07-13 61 views
2

我知道文本框有默認撤銷命令,當我按ctrl + Z。我正在創建UWP應用程序,我需要通過在GUI中按下一些按鈕來調用此命令。我該怎麼做?有沒有像textbox.Undo()這樣的方法?撤銷命令的UWP文本框方法

+0

有一個在UWP創建假的輸入數據的API。不幸的是不能記住它的名字,但使用它你應該能夠模擬CTRL + Z按鍵。 –

回答

1

我不認爲你會發現任何像Textbox.Undo(),但你可以保存在列表中的所有更改,並在需要時恢復文本。

.XAML:

<TextBox Text="{Binding MyText}" /> 

.CS:

private List<string> _history; 

private double _myText; 
public double MyText 
{ 
    get { return _myText; } 
    set 
    { 
     if(_myText != value) { 
      _myText = value; 
      _history.Add(value); 
      //Notify 
     } 
    } 
} 

private void Undo() { 
    _myText = _history.LastOrDefault(); 
    //Notify 
} 
+0

我知道這是方式,如何解決它。但我想調用默認的撤銷命令。我希望應該有某種方式,如何調用它,否則當我們無法隨時調用它時,它就沒用了。 –

0

您可以使用ApplicationCommand類。 只需在按鈕命令中設置ApplicationCommand.Undo,然後執行撤消操作。然後設置Target type =教科書的名稱。

<Button Command="ApplicationCommands.Undo" Width="75" TargetType="{x:Type TextBox}"/> 

    <TextBox BorderBrush="Black" BorderThickness="2" Margin="25" 
      TextWrapping="Wrap"> 
    </TextBox> 

This is a link for ApplicationCommand Class

ApplicationCommands Class

+0

此解決方案不適用於UWP – AVK

+0

這不適用於UWP。 –