相关疑难解决方法(0)

在Visual Studio外部运行时从WPF窗口中删除图标

我已经使用了从WPF窗口删除图标中的代码来从应用程序的窗口中删除图标(使用附加的属性答案),这在通过Visual Studio 2010运行时起了作用.当应用程序正常运行时,仍会出现图标.

该窗口没有为其Icon属性分配图标,但应用程序确实在其属性(应用程序>资源>图标)中定义了一个图标,该图标显示为窗口图标.

如何解决这种行为差异,以便在Visual Studio 2010外部运行应用程序时不显示图标?

.net c# wpf .net-4.0 visual-studio-2010

8
推荐指数
1
解决办法
1071
查看次数

隐藏WPF窗口中的图标

我知道有很多关于隐藏或删除WPF窗口左上角图标的问题,这是系统菜单所在的位置.我尝试了很多但没有效果.这是我的要求:

  • 图标消失,不占用任何空白区域(即没有透明图标)
  • 窗口标题直接从窗口的左边缘开始
  • 右上角的关闭按钮仍在那里工作
  • 如果启用,最小化/最大化按钮仍然存在(可选,不测试此)
  • 没有自定义绘制整个窗口框架
  • 适用于启用了Aero Glass的Windows 7(Windows 8任何人?)
  • 适用于32位和64位Windows(x86和x64版本)
  • 适用于WPF .NET 4.0
  • 不在像Visual Studio这样的调试器中工作(如果它也可以在调试器中工作,会很好)
  • 也应该适用于Windows XP(可选)

可用的答案基本上使用Windows API函数GetWindowLong,SetWindowLong有时还SetWindowPos添加扩展窗口样式WS_EX_DLGMODALFRAME和调用SWP_FRAMECHANGED.有时,其他样式也会设置或取消设置.

不幸的是,这根本不起作用.我可以没有没有关闭按钮的图标,或者两者都在那里.但同样值得注意的是,所有这些内容都来自2010年或预告片.它似乎是针对早期的.NET或Windows版本而失败了.

我已经将系统对话框(来自资源管理器)和我的WPF窗口的窗口样式与Microsoft Spy ++(包含在Visual Studio中)进行了比较.但我可以尝试将所有标志设置为相同,图标不会消失.就像黑魔法一样,它会推翻所有其他API函数或物理.

有没有人能够在今天和指定环境中使用仍然有效的解决方案?

wpf icons window

7
推荐指数
2
解决办法
2万
查看次数

WPF - 从模态窗口中删除系统菜单图标,但不是主应用程序窗口

我正在尝试(在WPF中):

  1. 有一个.exe文件,显示系统菜单图标(窗口左上角的图标),就像正常一样
  2. 没有此图标显示在此应用程序调用的模态窗口中

我在这里尝试了解决方案: 从WPF窗口中删除Icon

这很有效.在http://blogs.msdn.com/b/wpfsdk/archive/2007/08/02/a-wpf-window-without-an-window-icon-the-thing-有一个可下载的相同内容的样本: 你点击到得最系统menu.aspx

但是,如果我将.ico文件添加到.exe的项目属性(属性 - >应用程序 - >图标和清单),它将停止工作.您可以使用可下载的示例尝试此操作.

似乎.exe中的图标也用在模式窗口中(我们在.dll文件中也有),即使该.dll的属性显示为"默认图标".它必须从.exe传递下来.那么,有没有办法在主窗口上显示图标,而不是在子窗口上?

可能更简单的方法是:即使项目的属性中指定了.ico文件,是否可以删除图标?

我发现唯一能工作的是将模态窗口的WindowStye设置为"ToolWindow".这给了我几乎我想要的东西:没有图标和"关闭"按钮(右上角的"x")仍然存在.然而,x是超小的.这是最好的吗?

谢谢你的帮助.

wpf icons menu system

3
推荐指数
1
解决办法
2454
查看次数

标签 统计

wpf ×3

icons ×2

.net ×1

.net-4.0 ×1

c# ×1

menu ×1

system ×1

visual-studio-2010 ×1

window ×1