드래그앤드롭 설정하기
TextEditBox(또는 listBox) 창을 생성
텍스트박스나 리스트박스 선택 > 속성창의 동작 메뉴에서 'AllowDrop'을 'True'로 변경합니다.
TextEdit 창을 선택 > 이벤트함수 생성창의 끌어서 놓기 메뉴에서 DragDrop 과 DragEnter을 실행합니다.
파일 드래그앤드롭
DragDrop 과 DragEnter 이벤트함수를 아래 코드 처럼 수정하시면 됩니다.
//파일 경로 가져오기: 드래그앤드롭
private void filesplit_textBox_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Copy | DragDropEffects.Scroll;
}
}
private void filesplit_textBox_DragDrop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
// 파일 경로를 가져온다.
string[] strFilePath = (string[])e.Data.GetData(DataFormats.FileDrop);
filesplit_textBox.Text = strFilePath[0];
}
}
텍스트박스에서 폴더 드래그앤드롭
파일 드래그앤드롭 설정과 같지만 DragDrop 코드를 살짝 변경하시면 됩니다.
//폴더 경로 가져오기: 드래그앤드롭
private void filesum_textBox_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Copy | DragDropEffects.Scroll;
}
else
{
e.Effect = DragDropEffects.None;
}
}
private void filesum_textBox_DragDrop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
# 디렉토리 경로를 텍스트박스에 넣는다.
var directoryName = (string[])e.Data.GetData(DataFormats.FileDrop);
filesum_textBox.Text = directoryName[0];
}
}
리스트 박스에서 파일 또는 폴더 드래그앤드롭
-설정 방법은 위 텍스트에디트 박스에서 하던 방식으로 하면 됩니다.
-코드만 살짝 변경하시면 됩니다.
//리스트박스: 드래그앤드롭
private void listBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Copy | DragDropEffects.Scroll;
}
else
{
e.Effect = DragDropEffects.None;
}
}
private void listBox1_DragDrop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
string[] files = e.Data.GetData(DataFormats.FileDrop, true) as string[];
foreach (string file in files)
{
listBox1.Items.Add(file);
}
}
}
'공학속으로 > C#' 카테고리의 다른 글
C# ChatGPT API사용하기 (0) | 2023.07.13 |
---|---|
C# 리스트박스(ListBox) 사용법 (0) | 2023.07.07 |
C# ini 사용하기 (0) | 2023.07.06 |
C# String.Format - 3자리 마다 콤마 등 서식문자열, 자릿수 표시하기 (0) | 2023.04.11 |
C# 문자열 연결하는 4가지 방법 (0) | 2023.04.11 |
댓글