Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将图像与文本C一起插入RichTextBox#_C#_Image_Text_Insert_Richtextbox - Fatal编程技术网

C# 将图像与文本C一起插入RichTextBox#

C# 将图像与文本C一起插入RichTextBox#,c#,image,text,insert,richtextbox,C#,Image,Text,Insert,Richtextbox,我试图在C#中的富文本框中插入图像,但到目前为止我失败了。悲惨地 这是我正在使用的代码: Clipboard.SetImage(Image.FromFile(Application.StartupPath + @"\PIC\" + i + ".bmp")); chat.Paste(); 真正的问题是我无法将文本和图像同时放入文本框。复制图像后插入文本的那一刻,图像就消失了。我找不到解决这个问题的办法 有人能帮我吗?请 谢谢尝试一下,您可以将其粘贴到代码中并调用: 将图片放入项目中以嵌入资源,并

我试图在C#中的富文本框中插入图像,但到目前为止我失败了。悲惨地

这是我正在使用的代码:

Clipboard.SetImage(Image.FromFile(Application.StartupPath + @"\PIC\" + i + ".bmp"));
chat.Paste();
真正的问题是我无法将文本和图像同时放入文本框。复制图像后插入文本的那一刻,图像就消失了。我找不到解决这个问题的办法

有人能帮我吗?请
谢谢

尝试一下,您可以将其粘贴到代码中并调用: 将图片放入项目中以嵌入资源,并调用此方法 通过richtextbox

    private void createImage(Control item)
    {   
        Hashtable image = new Hashtable(1);
        image.Add(item,yourproject.Properties.Resources.yourpicturename);
        Clipboard.SetImage((Image)image[item]);
        ((RichTextBox)item).Paste();
    }

这幅画存在吗?例外?看看这个。。可能会有帮助@SriramSakthivel也不例外。图片已存在,正在剪贴板中复制。不要使用数据格式,只需粘贴即可。尝试if(richtextbox.canpaste(df)),它将不会输入if语句。确定。问题是,当我在后面添加文本时,问题就出现了。我怎么把它们都保留下来。就像这个RichTextBox。AppendText(“\n”+yourtext)应该可以。我在几年前玩的一个关于元素周期表的应用程序中这样做了,我在其中插入了每个元素。我在RichTextBox中单击了元素的图片和下面的文本描述,“\n”用于将文本放在图片下方,否则它将从图片旁边开始。没有理由转换为哈希表,资源可以像这样放入剪贴板:clipboard.SetImage(Properties.Resources.yourimage);
private static void createImage(RichTextBox item)
{
  var image = new Hashtable(1) { { item, Properties.Resources.yourimage } };
  Clipboard.SetImage((Image)image[item]);
  item.Paste();
}
RichTextBox rtb = new RichTextBox();    
byte[] headerImage = (byte[])(dr["ImageData"]);
                string imageData = string.Empty;
                if (headerImage != null && headerImage.Length > 0)
                {
                    Bitmap bmp = new Bitmap(new MemoryStream(headerImage));
                    MemoryStream ms = new MemoryStream();
                    bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
                    ms.Position = 0;   
                    imageData = @"{\pict\jpegblip\picw10449\pich3280\picwgoal9924\pichgoal1860\ " + BitConverter.ToString(ms.ToArray()).Replace("-", string.Empty).ToLower() + "}";

                    ms.Dispose();
                }
string finalrtfdata = rtb.Rtf;
                finalrtfdata = finalrtfdata.Replace("&ImageHeader&", imageData);
// finalrtfdata contain your image data along with rtf tags.