1

我正在使用 ICSharpCode 的 AvalonEdit 文本编辑器,并且在文档列表之后的 TabControl 中显示不同的 TextEditor 控件。

TabControl 的 WPF 代码:

<TabControl 
                Grid.Row="0"
                ItemsSource="{Binding OpennedFiles, UpdateSourceTrigger=PropertyChanged}" 
                DisplayMemberPath="Data.Name" 
                SelectedItem="{Binding SelectedFile, UpdateSourceTrigger=PropertyChanged}">

                <TabControl.ContentTemplate>
                    <DataTemplate>
                        <AE:TextEditor ShowLineNumbers="True" FontFamily="Consolas" Unloaded="TextEditor_Unloaded" FontSize="16" Loaded="TextEditor_Loaded" Document="{Binding Document}" SyntaxHighlighting="Python" />
                    </DataTemplate>
                </TabControl.ContentTemplate>
            </TabControl>

我的问题是,当你更改selectionned选项卡时,之前选择的文档的插入符号偏移量被重置为0,这真的很烦人。

我尝试绑定文本编辑器的插入符号偏移属性,但它不是依赖属性,并且由于我不确定它是否会起作用,所以我没有勇气创建附加的依赖属性。

我怀疑它来自这样一个事实,即在选项卡选择时在文本编辑器中重新加载了 Document,并且由于插入符号偏移似乎依赖于 TextArea,它返回到它的默认值,但我仍然没有任何想法关于如何避免这种情况。

有什么提示吗?

4

0 回答 0