1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
private void rtbFlow_Copying(object sender, DataObjectCopyingEventArgs e)
{
var rtb = sender as RichTextBox;
if (rtb != null)
{
UserControl1 uc = new UserControl1();
uc.Initialize("Test");
string ser = System.Windows.Markup.XamlWriter.Save(uc);
using (MemoryStream memoryStream = new MemoryStream())
{
rtb.Selection.Save(memoryStream, DataFormats.Xaml, true);
memoryStream.Position = 0;
using (StreamReader streamReader = new StreamReader(memoryStream))
{
string xaml = streamReader.ReadToEnd();
xaml = xaml.Replace("<InlineUIContainer> </InlineUIContainer>", "<InlineUIContainer> " + ser + " </InlineUIContainer>");
e.DataObject.SetData(DataFormats.Xaml, xaml);
}
}
}
} |
Partager