【发布时间】:2020-10-30 16:53:14
【问题描述】:
vs2010,此处为 WPF .NET 4.5。
在我看来,我有一个RichTextBox。文本设置为 Arial,大小 12:
<xctk:RichTextBox DataContext="{StaticResource EditorViewModel}" Grid.Row="1"
Height="296" HorizontalAlignment="Center" SpellCheck.IsEnabled="True" Margin="6,145,6,0"
Name="richTextBoxArticleBody" VerticalAlignment="Top" Width="962" Grid.RowSpan="2"
BorderBrush="Silver" BorderThickness="1" AcceptsTab="True" FontFamily="Arial" FontSize="12"
Text="{Binding PastedText, UpdateSourceTrigger=PropertyChanged}" />
我想将所有格式从粘贴中剥离到我的RichTextBox 中。我的视图中有一个粘贴按钮,它绑定到 FormatPastedText 命令:
private void FormatPastedTextCommandAction()
{
string paste = (string)Clipboard.GetData("Text");
Clipboard.SetText(paste);
PastedText += paste.ToString();
Clipboard.Clear();
}
这几乎可以工作,除了粘贴的文本不是以 12 号字体显示而是以 15 号左右显示。键入的文本按预期格式化为 12 号。有没有更好的方法来解决这个问题或设置粘贴字符串的字体大小?
谢谢
【问题讨论】:
-
粘贴是字符串类型。您不需要使用 paste.ToString()。
-
尝试 Clipboard.GetText() 而不是 Clipboard.GetData("Text")。这可能会解决您的问题。
-
是的,这些只是我忘记更改的一些代码。结果一样...
标签: c# wpf xaml mvvm richtextbox