我将 URL
中的图像插入到 RichEditBox
中,如下所示:
// Create a MemoryStream from uri, and insert into richeditbox
System.IO.Stream stream = await new HttpClient().GetStreamAsync("some url");
var memoryStream = new MemoryStream();
await stream.CopyToAsync(memoryStream);
memoryStream.Position = 0;
this.richEditBox.Document.Selection.InsertImage(40, 40, 0, Windows.UI.Text.VerticalCharacterAlignment.Baseline, "image", memoryStream.AsRandomAccessStream());
效果很好,但我无法在按 backspace
时删除(使用屏幕键盘)图像!
有人有什么想法吗?
最佳答案
找到了!答案很简单 - 只需要设置 Selection.StartPosition
this.richEditBox.Document.Selection.StartPosition--;
this.richEditBox.Document.Selection.Delete(Windows.UI.Text.TextRangeUnit.Object, 1);
StartPosition
默认设置为 EndPosition
for Document.Selection
,所以尝试删除只是什么都不做(因为什么都没有 已选择)。
注意:重写RichEditBox
的KeyDown
事件,将以上添加到VirtualKey.Back
按键得到从屏幕键盘获得所需的结果!
关于c# - 从 RichEditBox 中删除图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30540497/