2012-12-24 2 views
1

끌어서 놓기 기능이있는 WinForms를 사용하고 있습니다. 지금은 이벤트를 기반으로하며 패널을 드래그하여 패널에 라벨을 붙이는 데 아무런 문제가 없습니다. 그러나 레이블 (이 경우 숫자)을 클릭하면 라벨과 패널의 드래그 앤 드롭 이벤트를 동시에 발생시킬 수 없으므로 아무 것도 이동할 수 없습니다.레이블이있는 드래그 앤 드롭 패널

이 문제를 해결하기위한 내 생각은 레이블 좌표 (. 텍스트는 항상 1-9)를 레이블 좌표에 바인딩하는 것이 었습니다.

다른 생각은 레이블이 있다는 사실을 "숨길"수있는 Tile (string labelText)과 같은 생성자가있는 사용자 정의 UI 구성 요소를 작성하여 패널의 끌어서 놓기 이벤트 만 사용해야한다는 것입니다. .

이 문제를 해결하는 가장 좋은 방법은 무엇입니까?

답변

1

아마도 같은 것을 : 나는 panel1_MouseDown (에 Panel1, E)`사용하는 것이 내가 널 (null)에 통과하지 것이지만

private void label1_MouseDown(object sender, MouseEventArgs e) 
{ 
    panel1_MouseDown(null, null); 
} 
+1

이 작동합니다 대신' –