[DEVEXPRESS] Hướng dẫn tạo Form Login Overlay C#
Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách thiết kế Form Login Overlay trên Devexpress lập trình C# Winform.
[DEVEXPRESS] Overlay Form Login C#
Dưới đây là giao diện demo ứng dụng Form login:
Form login sẽ sáng nổi trên Form Main, giống Modal trên các hộp thoại của website.
Trong bài viết mình có viết 1 class OverlayFormShow.cs
using DevExpress.XtraSplashScreen;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace NTA_Stone.Module
{
class OverlayFormShow
{
private static OverlayFormShow _defaultInstance;
public static OverlayFormShow Instance
{
get
{
if (_defaultInstance == null)
{
_defaultInstance = new OverlayFormShow();
}
return _defaultInstance;
}
set => _defaultInstance = value;
}
public IOverlaySplashScreenHandle handle = null;
public OverlayFormShow()
{
}
public void ShowFormOverlay(Control control)
{
Bitmap img = new Bitmap(1, 1);
bool useFadeIn = false;
bool useFadeOut = false;
Color backColor = Color.Black;
Color foreColor = Color.Black;
double opacity = 0.5;
Image waitImage = img;
OverlayWindowOptions options = new OverlayWindowOptions(
useFadeIn,
useFadeOut,
backColor,
foreColor,
opacity,
waitImage);
this.handle = ShowProgressPanel(control, options);
}
public IOverlaySplashScreenHandle ShowProgressPanel(Control control, OverlayWindowOptions option)
{
return handle = SplashScreenManager.ShowOverlayForm(control, option);
}
public void CloseProgressPanel()
{
if (handle != null)
SplashScreenManager.CloseOverlayForm(this.handle);
}
}
}
Cách sử dụng:
1. Mở Form Show Overlay
OverlayFormShow.Instance.ShowFormOverlay(this);
FrmLogin frm = new FrmLogin();
frm.ShowDialog();
2. Gọi sự kiện đóng Form Overlay khi login thành công.
OverlayFormShow.Instance.CloseProgressPanel();
Thanks for watching!