Хорошо, поэтому я следовал документам до мельчайших деталей, и при попытке отладки и запуска выдает следующее сообщение об ошибке (F5):
PInvokeStackImbalance был обнаружен
Сообщение: вызов функции PInvoke
'VistaControls! VistaControls.Dwm.NativeMethods :: DwmExtendFrameIntoClientArea'
разбалансировал стек. Это
скорее всего потому, что управляемый ПИнвок
подпись не соответствует неуправляемой
целевая подпись. Проверьте, что
соглашение о вызовах и параметры
подпись PInvoke соответствует цели
неуправляемая подпись.
Понятия не имею, что это значит или как это исправить! Может кто-нибудь помочь, пожалуйста? Есть предложения?
Я использовал это раньше, но на этот раз это не работает. Я использую VS2010 Express C # WinForms, .NET 4 (как это было раньше, когда я впервые использовал его много лет назад.)
Спасибо
Ссылка: http://windowsformsaero.codeplex.com/wikipage?title=Glass%20on%20WinForms&referringTitle=Documentation
И да, я заметил исправление, сделанное человеком внизу этой страницы, и я исправил это, но оно все равно не работает!
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using VistaControls.Dwm;
namespace One_Stop_Management
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
e.Graphics.FillRectangles(Brushes.Black, new Rectangle[] {
new Rectangle(0, 0, this.ClientSize.Width, 30),
new Rectangle(this.ClientSize.Width - 30, 0, 30, this.ClientSize.Height),
new Rectangle(0, this.ClientSize.Height - 30, this.ClientSize.Width, 30),
new Rectangle(0, 0, 30, this.ClientSize.Height)
});
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
VistaControls.Dwm.DwmManager.EnableGlassSheet(this);
}
}
}