Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.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# 如何使用webbrowser控件将自动图像附加到网页中的容器?_C#_.net_Winforms - Fatal编程技术网

C# 如何使用webbrowser控件将自动图像附加到网页中的容器?

C# 如何使用webbrowser控件将自动图像附加到网页中的容器?,c#,.net,winforms,C#,.net,Winforms,现在我可以在邮件中添加标题和正文(内容)的文本。 但是现在我想在邮件中附加自动文件/图像 这是一个屏幕截图,显示消息页面,底部是附加图像的一部分 您可以附加图像和视频。红色圆圈是我单击添加图像的位置。 黑圈是我想添加视频的地方。 黄色圆圈是我可以拖放到图像的窗口/容器。 如果我点击添加一个视频,它应该是一个像yuotube视频链接链接 当我在需要拖放或单击并选择要附着的图像的容器上进行检查时,我看到: 这是我现在的代码: using System; using System.Collecti

现在我可以在邮件中添加标题和正文(内容)的文本。 但是现在我想在邮件中附加自动文件/图像

这是一个屏幕截图,显示消息页面,底部是附加图像的一部分

您可以附加图像和视频。红色圆圈是我单击添加图像的位置。 黑圈是我想添加视频的地方。 黄色圆圈是我可以拖放到图像的窗口/容器。 如果我点击添加一个视频,它应该是一个像yuotube视频链接链接

当我在需要拖放或单击并选择要附着的图像的容器上进行检查时,我看到:

这是我现在的代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Net;
using System.Collections.Specialized;

namespace AutomaticPosting
{
    public partial class Form1 : Form
    {
        bool clickedAdd = false;

        public Form1()
        {
            InitializeComponent();

            webBrowser1.ScriptErrorsSuppressed = true;
            webBrowser2.ScriptErrorsSuppressed = true;
            webBrowser1.DocumentCompleted += WebBrowser1_DocumentCompleted;
        }

        private void WebBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
            {
                return;
            }

            HtmlElementCollection items1 = webBrowser1.Document.GetElementsByTagName("span");
            if (clickedAdd == false)
            {
                foreach (HtmlElement item in items1)
                {
                    if (item.GetAttribute("className") == "addMessage")
                    {
                        item.InvokeMember("click");
                        webBrowser2.DocumentCompleted += WebBrowser2_DocumentCompleted;
                        try
                        {
                            clickedAdd = true;
                            webBrowser2.Navigate("http://www.tapuz.co.il/forums/addmsg/394");
                            break;
                        }
                        catch (Exception ex)
                        {
                            string myerr = ex.ToString();
                        }
                    }
                }
            }
        }

        private void WebBrowser2_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.AbsoluteUri != webBrowser2.Url.AbsoluteUri)
            {
                return;
            }

            try
            {
                HtmlElementCollection items = webBrowser2.Document.GetElementsByTagName("div");
                foreach (HtmlElement item in items)
                {
                    if (item.GetAttribute("className") == "elements")
                    {
                        webBrowser2.Document.GetElementById("ctl00_RightMainContent_CKEditor1").InnerText = "What is the forecast please ?";//"עורך טקסט עשיר, ctl00_RightMainContent_CKEditor1";
                    }
                    if (item.GetAttribute("className") == "elements")
                    {
                        webBrowser2.Document.GetElementById("ctl00_RightMainContent_txt_subject").InnerText = "אני מכונאי";
                    }
                }

                // cke_1_contents


                var div = webBrowser2.Document.GetElementById("ctl00_RightMainContent_submitAddress_p_submitButtom");
                if (div != null)
                {
                    var button = div.All.Cast<HtmlElement>().Where(x =>
                        !string.IsNullOrEmpty(x.GetAttribute("className")) &&
                        x.GetAttribute("className").Contains("btn_send")).FirstOrDefault();
                    string ss = "";
                    if (button != null)
                        button.InvokeMember("click");
                    else
                        MessageBox.Show("Button not found.");
                }
            }
            catch (Exception ee)
            {
                string exception = ee.ToString();
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            webBrowser1.Navigate("http://www.tapuz.co.il/forums/forumpage/394");
        } 
    }
}
使用系统;
使用System.Collections.Generic;
使用系统组件模型;
使用系统数据;
使用系统图;
使用System.Linq;
使用系统文本;
使用System.Threading.Tasks;
使用System.Windows.Forms;
使用System.IO;
Net系统;
使用System.Collections.Specialized;
命名空间自动定位
{
公共部分类Form1:Form
{
bool clickedd=false;
公共表格1()
{
初始化组件();
webBrowser1.ScriptErrorsSuppressed=true;
webBrowser2.ScriptErrorsSuppressed=true;
webBrowser1.DocumentCompleted+=webBrowser1_DocumentCompleted;
}
私有无效WebBrowser1\u文档已完成(对象发送者,WebBrowserDocumentCompletedEventArgs e)
{
while(webBrowser1.ReadyState!=WebBrowserReadyState.Complete)
{
返回;
}
HtmlElementCollection items1=webBrowser1.Document.GetElementsByTagName(“span”);
如果(clickedAdd==false)
{
foreach(项目1中的HtmlElement项目)
{
if(item.GetAttribute(“className”)=“addMessage”)
{
item.InvokeMember(“单击”);
webBrowser2.DocumentCompleted+=webBrowser2_DocumentCompleted;
尝试
{
clickedd=true;
webBrowser2.导航(“http://www.tapuz.co.il/forums/addmsg/394");
打破
}
捕获(例外情况除外)
{
字符串myerr=ex.ToString();
}
}
}
}
}
私有无效WebBrowser2\u文档已完成(对象发送者,WebBrowserDocumentCompletedEventArgs e)
{
if(e.Url.AbsoluteUri!=webBrowser2.Url.AbsoluteUri)
{
返回;
}
尝试
{
HtmlElementCollection items=webBrowser2.Document.GetElementsByTagName(“div”);
foreach(项目中的HtmlElement项目)
{
if(item.GetAttribute(“className”)=“elements”)
{
webBrowser2.Document.GetElementById(“ctl00”右主内容“CKEditor1”).InnerText=“请问预测结果如何?”/“ctl00”右主内容“CKEditor1”;
}
if(item.GetAttribute(“className”)=“elements”)
{
webBrowser2.Document.GetElementById(“ctl00”右主内容“txt”主题”).InnerText;
}
}
//cke_1_内容
var div=webBrowser2.Document.GetElementById(“ctl00_RightMainContent_submitAddress_p_submitButtom”);
如果(div!=null)
{
var button=div.All.Cast()。其中(x=>
!string.IsNullOrEmpty(x.GetAttribute(“className”))&&
x、 GetAttribute(“className”).Contains(“btn_send”).FirstOrDefault();
字符串ss=“”;
如果(按钮!=null)
按钮。调用成员(“单击”);
其他的
MessageBox.Show(“未找到按钮”);
}
}
捕获(异常ee)
{
字符串异常=ee.ToString();
}
}
私有无效按钮1\u单击(对象发送者,事件参数e)
{
webBrowser1.导航(“http://www.tapuz.co.il/forums/forumpage/394");
} 
}
}
我在C#或.NET web开发方面没有经验。但是您可以考虑使用Base64编码。因为从浏览器发送的二进制数据不容易跨浏览器移植

既然可以发送文本,就可以发送base64编码的二进制数据