C# WPF定制镀铬窗口?

C# WPF定制镀铬窗口?,c#,wpf,window,visual-c#-express-2010,C#,Wpf,Window,Visual C# Express 2010,我一直在努力做一些与此相关的事情 我找了又找,只找到了这个。 我无法将其集成到我的应用程序中。我今天刚开始参加WPF,所以我正在学习。我已经把窗户放下了。我还需要什么?谢谢 定制chrome有很多实现 我看到的另一个与您链接的帮助程序库是 阅读第3节。它可以通过Nuget进行设置,使新用户更容易集成 第3.3.4.3.5节还讨论了自定义和扩展MetroWindow控件,该控件为您提供自定义chrome,还允许在chrome标题栏中添加控件,请参见此堆栈溢出问题: 我在问如何将按钮插入到我的自

我一直在努力做一些与此相关的事情

我找了又找,只找到了这个。
我无法将其集成到我的应用程序中。我今天刚开始参加WPF,所以我正在学习。我已经把窗户放下了。我还需要什么?谢谢

定制chrome有很多实现

我看到的另一个与您链接的帮助程序库是

阅读第3节。它可以通过Nuget进行设置,使新用户更容易集成


第3.3.4.3.5节还讨论了自定义和扩展
MetroWindow
控件,该控件为您提供自定义chrome,还允许在chrome标题栏中添加控件,请参见此堆栈溢出问题:

我在问如何将按钮插入到我的自定义窗口Chrome窗口的标题栏中。xaml示例可能足以帮助您开始

除此之外,我不知道你在找什么


编辑:我在另一篇文章中的按钮样式是一个相当简单的按钮,但是你应该能够用你想要的任何样式来替换它。

如果你想了解如何将其添加到你的应用程序中的分步指南,我可以尝试一下;我只是碰巧需要为一个小应用程序做一点复习,我喜欢它并尝试了一下——我花了大约45分钟申请。事实上很酷

首先:下载源程序并将其解压缩到计算机

您将在其中找到三个子文件夹。一个是示例应用程序,一个是Microsoft.Windows.Shell,一个是CustomChromeLibrary。将后两者复制到项目地图的根文件夹中,将它们添加到项目地图中(添加现有项目),并从启动项目中引用它们

现在打开要应用CustomChromeLibrary的窗口。您需要将根从

<Window> 
对此

public partial class YourWindow : CustomChromeLibrary.CustomChromeWindow
你已经走到一半了

接下来,您只需要为窗口创建对象(标题栏等)。这在第5号样本项目中做得非常好;我真的只是复制了它

夺走一切

<shell:WindowChrome.WindowChrome>
    <shell:WindowChrome
    ...
而不是示例的命名空间

最后,您需要创建按钮的两个xaml文件:GlassButton.xaml和GlassIcon.xaml;它们可以在“Resources”子文件夹中找到(在xaml中作为资源字典引用)。将整个子文件夹复制到项目中,并将这两个文件添加到项目中(添加现有文件)

现在您终于可以运行您的项目了


让我们不要忘记这一点:对codeplex.com原创文章的作者,我们感到非常荣幸

你在链接文章中没有得到什么?我需要什么DLL?我都有吗?我只有Shell DLL。我该怎么做?我所看到的只是一些Xaml,令人困惑。抱歉,如果我没有完全理解它…哈,这对我来说是非常新的。嗯,@Mic,我知道你的意思。我已经弄清楚了窗户的常规问题。我已经开始定制自己的窗口。它运行得非常好,有阴影和边界。但当我在寻找重新调整大小和自定义关闭按钮时,我看到了这一点,并希望将其应用到我的应用程序中。谢谢@Mic我也看过这篇文章……这对我也没有帮助。谢谢我唯一真正需要的是恢复原始窗口功能,按钮样式如图所示。如果你指的是原始窗口功能(关闭、恢复/最大化和最小化),你也可以通过metro应用程序库获得。只需选择你想要的部分并使用它们。仔细阅读文档。CodeProject glass主题文章也是我尝试过的。然而,在windows 8和windows最大化倾斜的chrome尺寸上它有一些问题metro的事情看起来更复杂。我想我所要做的就是添加一些dll并更改Xaml。非常彻底,我希望我能给你100分。谢谢
public partial class YourWindow : Window
public partial class YourWindow : CustomChromeLibrary.CustomChromeWindow
<shell:WindowChrome.WindowChrome>
    <shell:WindowChrome
    ...
    <!--min/max/close buttons-->
    <ccl:CaptionButtons/>
    <Grid> 
        The content of your Window goes here 
    </Grid>
    </Grid>
</ccl:CustomChromeWindow>
namespace YourNamespace
{ ...