
Context Menu라는 것이 있습니다.

이런 메뉴를 Context Menu라고 합니다.
이 Context Menu를 버튼 옆에 띄워봅시다.

버튼을 하나 생성하고 이름(Name)은 btnTest라고 했습니다.
그리고 일반 Context Menu가 아닌 Context Menu Strip을 사용하겠습니다.
버튼을 더블 클릭하여 버튼 클릭 이벤트를 하나 만들어봅니다.
private void btnTest_Click(object sender, EventArgs e)
{
// Context Menu Strip 생성
ContextMenuStrip contextMenuStrip = new ContextMenuStrip();
// 메뉴 아이템 1
ToolStripMenuItem menuItem = new ToolStripMenuItem()
{
Text = "Test1"
};
menuItem.Click += (ms, me) => { MessageBox.Show("Test1 Clicked"); };
// 메뉴 아이템 2
ToolStripMenuItem menuItem2 = new ToolStripMenuItem()
{
Text = "Test2"
};
menuItem2.Click += (ms, me) => { MessageBox.Show("Test2 Clicked"); };
// 메뉴 아이템을 Context Menu에 추가
contextMenuStrip.Items.Add(menuItem);
contextMenuStrip.Items.Add(menuItem2);
// 버튼 옆에 Context Menu를 띄우기
Point ptBtn = btnTest.PointToScreen(Point.Empty);
ptBtn.X += btnTest.Width;
contextMenuStrip.Show(ptBtn);
}
이렇게 하면

버튼 바로 옆 오른쪽 상단에 뜨게 됩니다.
'Study > C#, Winform' 카테고리의 다른 글
| [C#] DateTime 시간 자르기, 반올림, 반내림, 가까운 값 (1) | 2022.10.11 |
|---|---|
| [C#] Enumerable 에서 중복 데이터 삭제 (Distinct) (0) | 2022.10.06 |
| [C# Winform] 스크롤바 크기 (넓이) (0) | 2022.10.04 |
| [C#] MemoryStream, StreamWriter, StreamReader, BinaryWriter, BinaryReader (1) | 2022.08.16 |
| [C#] 시간 관련 (DateTime, TimeSpan, Stopwatch) (0) | 2022.08.09 |