를 사용하여 프로그램이 시스템 트레이에 최소화되도록 하는 가장 쉬운 방법입니다.NET 4
저는 새로운 WPF 애플리케이션을 만들고 있으며 애플리케이션을 최소화하고 시계 바로 옆(또는 일반 영역)의 시스템 트레이에 멋지고 편안한 공간을 확보해야 합니다.
Windows XP, Vista 및 7에서 작동해야 합니다.이전 버전의 Windows를 지원하지 않아도 됩니다.
사용 중인 경우 이를 달성하는 가장 간단한 방법은 무엇입니까?NET 4?
다음은 알림 영역을 최소화하는 방법을 보여주는 간단한 예입니다.에 참조를 추가해야 합니다.System.Window.Forms
그리고.System.Drawing
집회
public partial class Window1 : System.Windows.Window
{
public Window1()
{
InitializeComponent();
System.Windows.Forms.NotifyIcon ni = new System.Windows.Forms.NotifyIcon();
ni.Icon = new System.Drawing.Icon("Main.ico");
ni.Visible = true;
ni.DoubleClick +=
delegate(object sender, EventArgs args)
{
this.Show();
this.WindowState = WindowState.Normal;
};
}
protected override void OnStateChanged(EventArgs e)
{
if (WindowState == System.Windows.WindowState.Minimized)
this.Hide();
base.OnStateChanged(e);
}
}
저는 WPF에서 이 무료 알림 아이콘 구현을 성공적으로 사용했습니다.
http://www.hardcodet.net/projects/wpf-notifyicon
설정이 매우 간단하며 소스 코드가 제공됩니다.Windows Forms에 의존하지 않으므로 '순수한' WPF이며 사용자 지정이 매우 가능합니다.
코드 프로젝트에서 사용하는 방법에 대한 튜토리얼을 찾을 수 있습니다.
그리고 여기 너겟 패키지가 있습니다.
더하다notifyIcon
도구 상자에서 앱으로 이동합니다.
메인을 선택form
>>로 이동합니다.Properties
>> 선택Events
아이콘 >> 아래FromClosing event
유형MainForm_FormClosing
>> Enter 키를 누릅니다.
개봉됨.cs
file 다음 이벤트 동작을 입력합니다.
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
this.Hide();
notifyIcon.Visible = true;
ShowInTaskbar = false;
e.Cancel = true;
}
이제 X 버튼을 클릭하면 기본 FORM 창이 시스템 트레이로 최소화됩니다.다음 단계는 FOM을 정상 상태로 되돌리는 것입니다.
이동Properties
당신의notifyIcon
>> 찾기DoubleClick event
>> 유형NotifyIcon_DoubleClick
Enter 키를 눌러 이벤트 기능을 만듭니다.
이 코드를 이벤트에 추가합니다.
private void NotifyIcon_DoubleClick(object sender, EventArgs e)
{
this.Show();
notifyIcon.Visible = false;
}
알림 아이콘을 고급 스타일로 만들려면 상황에 맞는 메뉴를 추가하고 알림 아이콘에 연결하면 다음과 같은 작업을 수행할 수 있습니다.
알림에 컨텍스트 메뉴스트립을 연결할 수 있는 위치입니다.아이콘:
행운을 빕니다.
언급URL : https://stackoverflow.com/questions/10230579/easiest-way-to-have-a-program-minimize-itself-to-the-system-tray-using-net-4
'code' 카테고리의 다른 글
Web API 속성 라우팅의 선택적 매개변수 (0) | 2023.05.03 |
---|---|
부분 선언은 서로 다른 기본 클래스를 지정할 수 없습니다. (0) | 2023.04.28 |
@SuppressLint 또는 @TargetApi 중 더 나은 것은 무엇입니까? (0) | 2023.04.28 |
배시 루프 목록에서 공백을 이스케이프하려면 어떻게 해야 합니까? (0) | 2023.04.28 |
첫 번째, 마지막, 인덱스 루프에 대한 각도 2 ng (0) | 2023.04.28 |