Формы, которые не имеет рамку, отдаленно напоминают плитки в Windows 8. Но их нельзя перемещать. Попробуем это изменить. Сделаем так, что бы кликнув на форме левой кнопкой мыши ее можно было перемещать.
Form1.cs
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Threading.Tasks;
using
System.Windows.Forms;
namespace
_0013 {
-
public
partial
class
Form1 : Form {
-
public
Form1() {
-
InitializeComponent();
-
//убираем рамку
-
this
.FormBorderStyle = FormBorderStyle.None;
-
//изменяем цвет
-
this
.BackColor = Color.FromArgb(59, 169, 222);
-
button1.BackColor = Color.FromArgb(99, 219, 252);
-
}
-
//создание констант
-
private
const
int
WM_NCHITTEST=0x84;
-
private
const
int
HTCLIENT=0x1;
-
private
const
int
HTCAPTION=0x2;
-
//переопределяем метод
-
protected
override
void
WndProc(
ref
Message m) {
-
switch
(m.Msg) {
-
case
WM_NCHITTEST:
-
base
.WndProc(
ref
m);
-
if
( (
int
)m.Result==HTCLIENT ) {
-
m.Result=(IntPtr)HTCAPTION;
-
return
;
-
}
-
break
;
-
}
-
base
.WndProc(
ref
m);
-
}
-
private
void
button1_Click(
object
sender, EventArgs e) {
-
Application.Exit();
-
}
-
}
}
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Threading.Tasks;
using
System.Windows.Forms;
namespace
_0013 {
-
public
partial
class
Form1 : Form {
-
public
Form1() {
-
InitializeComponent();
-
//убираем рамку
-
this
.FormBorderStyle = FormBorderStyle.None;
-
//изменяем цвет
-
this
.BackColor = Color.FromArgb(59, 169, 222);
-
button1.BackColor = Color.FromArgb(99, 219, 252);
-
}
-
//создание констант
-
private
const
int
WM_NCHITTEST=0x84;
-
private
const
int
HTCLIENT=0x1;
-
private
const
int
HTCAPTION=0x2;
-
//переопределяем метод
-
protected
override
void
WndProc(
ref
Message m) {
-
switch
(m.Msg) {
-
case
WM_NCHITTEST:
-
base
.WndProc(
ref
m);
-
if
( (
int
)m.Result==HTCLIENT ) {
-
m.Result=(IntPtr)HTCAPTION;
-
return
;
-
}
-
break
;
-
}
-
base
.WndProc(
ref
m);
-
}
-
private
void
button1_Click(
object
sender, EventArgs e) {
-
Application.Exit();
-
}
-
}
}