我TabControl
在. TextBox
_ ContentTemplate
当我在一个选项卡中键入一些文本并切换到另一个选项卡时,当我返回时,原始选项卡中的撤消历史记录消失了。
出现的另一个问题是任何被选择的文本都被取消选择,并且插入符号移动到TextBox
.
如果我只使用硬编码控件创建一个窗口,TabItem
则会保留撤消历史记录。这个问题与我的绑定或模板有关。
这是我的主窗口的 XAML
<Window x:Class="TabbedTextAreaTest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Button Command="{Binding AddNewTab}">Add Tab</Button>
<TabControl ItemsSource="{Binding Tabs}" Grid.Row="1">
<TabControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Header}"/>
</DataTemplate>
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<DataTemplate>
<TextBox Text="{Binding Content, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
</Grid>
</Window>
有没有办法在切换选项卡时保留撤消/重做历史和选定的文本而无需手动捕获这些命令?