C# 窗体如何嵌入到win7桌面中,置于桌面图标之下?

我想将C#窗体放到桌面图标下面,如下代码在win7中不管用:publicpartialclassForm1:Form{[DllImport("user32.dll",Ch... 我想将C#窗体放到桌面图标下面,如下代码在win7中不管用:
public partial class Form1 : Form
{
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern IntPtr FindWindow([MarshalAs (UnmanagedType.LPTStr)] string lpClassName, [MarshalAs(UnmanagedType.LPTStr)] string lpWindowName);

[DllImport("user32")]
private static extern IntPtr FindWindowEx(IntPtr hWnd1, IntPtr hWnd2, string lpsz1, string lpsz2);

[DllImport("user32.dll")]
public static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);

public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
IntPtr pWnd = FindWindow("Progman", null);
pWnd = FindWindowEx(pWnd, IntPtr.Zero, "SHELLDLL_DefVIew", null);
pWnd = FindWindowEx(pWnd, IntPtr.Zero, "SysListView32", null);
//IntPtr tWnd = new System.Windows.Interop.WindowInteropHelper(this).Handle;
SetParent(this.Handle, pWnd);
}
}
请问在Win7中如何将C#窗体嵌入桌面,置于桌面图标下面啊?
帮帮偶啊~~!
展开
 我来答
一个冒牌程序员
2013-09-04
知道答主
回答量:20
采纳率:0%
帮助的人:24.5万
展开全部
1、首先应该把MDI窗体ShowInTaskbar设置为true,在vs2008中默认就是true;
2、然后分别添加NotifyIcon
如果想实现最大化最小化为NotifyIcon增加ContextMenuStrip控件;
再把NotifyIcon的ContextMenuStrip属性值指向ContextMenuStrip,并且把NotifyIcon的Icon指定一张*.Icon格式的图片文件以便显示在任务栏中;
为NotifyIcon添加名称为notifyIconSystem_MouseDoubleClick的MouseDoubleClick事件;
为MDI窗体添加名为MainForm_SizeChanged的SizeChanged事件;

大体思路为此
更多追问追答
追问
额.....我不是要做MDI窗体,也不是要做任务栏托盘图标,而是要将窗体放到桌面图标的下面,系统是win7;
上述方法无效啊,不知大哥还有其他办法吗?
追答
桌面图标的下面??  哪里是桌面图标的下面。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ghotos
2013-09-06 · TA获得超过280个赞
知道小有建树答主
回答量:435
采纳率:0%
帮助的人:363万
展开全部
你这个需求确实好理解,但是我好像没见过这种窗体,有没有这样的实例可以让我瞅瞅
追问
有,我见过但一时想不起来,软件现在应该还在;
并且如上代码在XP以及更老的系统中,可以实现上述效果!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-09-07
展开全部
兄弟,我也在找,要是你知道怎么实现你的效果后,记得hi我一下!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式