webbrowser的问题

doyouknowm 2014-03-10 09:49:53
webbrowser中有一个html,其中有一个图片的超链接,我想在点击超链接的时候,打开一个新的winform,而不是网页跳转,我在webBrowser1_Navigating中处理,代码如下:

string[] tmp = webBrowser1.StatusText.Split('?')[1].Split('&');

if (tmp[0].Split('=')[1] == "image")
{
e.Cancel = true;
string ids = tmp[1].Split('=')[1];
pictureTest p = new pictureTest();
p.images = ids;
p.ShowDialog();
}

跳转取消了,但是p没弹出,请问这是为什么?我如何才能让p弹出呢
...全文
167 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
doyouknowm 2014-03-12
  • 打赏
  • 举报
回复
引用 8 楼 findcaiyzh 的回复:
我写了个小的测试程序,新的dialog可以跳出啊。

private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
        {
            if (e.Url.AbsoluteUri.Contains("contact"))
            {
                e.Cancel = true;
                Form2 newForm = new Form2();
                newForm.ShowDialog();
                
            }
        }
Form2是一个空的Form
确实可以,是我p内部出错了。。。。。
宝_爸 2014-03-12
  • 打赏
  • 举报
回复
我写了个小的测试程序,新的dialog可以跳出啊。

private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
        {
            if (e.Url.AbsoluteUri.Contains("contact"))
            {
                e.Cancel = true;
                Form2 newForm = new Form2();
                newForm.ShowDialog();
                
            }
        }
Form2是一个空的Form
threenewbee 2014-03-11
  • 打赏
  • 举报
回复
应该在newwindow中处理。 http://www.codeproject.com/Articles/71592/How-to-easily-capture-the-NewWindow-event-and-det http://blogs.artinsoft.net/Mrojas/archive/2009/08/07/Extended-WebBrowser-Control-Series-NewWindow3.aspx
doyouknowm 2014-03-11
  • 打赏
  • 举报
回复
引用 4 楼 caozhy 的回复:
估计是你试的方法不对。按理说思路就是这样的。
今天忙别的一直没看,刚才看了一下,的确是可以,但是不完全符合我的要求,我并不希望在新打开的窗口中还有webbrowser控件,我想把图片使用picturebox来处理,但该方式则需要将图片再显示在html中然后放在webbrowser内,这样我就需要将放大缩小功能放在html中,上页下页功能放在winform中(放在html中更麻烦,个人认为)。同时该如何生成该html,除了在C#中手动画出整个html页面外,还没想到好的方法,手动画出的话又稍微有点麻烦。请问针对我的需求,有比较好的解决办法吗
doyouknowm 2014-03-11
  • 打赏
  • 举报
回复
那两个网页我看看先
threenewbee 2014-03-11
  • 打赏
  • 举报
回复
估计是你试的方法不对。按理说思路就是这样的。
doyouknowm 2014-03-11
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
应该在newwindow中处理。 http://www.codeproject.com/Articles/71592/How-to-easily-capture-the-NewWindow-event-and-det http://blogs.artinsoft.net/Mrojas/archive/2009/08/07/Extended-WebBrowser-Control-Series-NewWindow3.aspx
不知道是不是我没看明白您的意思,相同的代码,我也在newWindow中试过,还是会弹出新的浏览器,而不是Form窗体
doyouknowm 2014-03-10
  • 打赏
  • 举报
回复
都睡了吗??

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧