lsirikh / ProperyExplorerTest

에로로님의 예제를 구현 및 응용해보자
0 stars 0 forks source link

Stackpanel을 이용한 컨트롤은 가능하나 클릭을 했을 때 배경을 만들 수 없는 문제가 있고, 멀티 셀릭팅도 불가능할듯 #4

Closed lsirikh closed 2 years ago

lsirikh commented 2 years ago

에로로님 항상 감사드립니다.

Stackpanel을 이용해서 마우스 움직이고, 커멘드 날려서 PropertyExplorer에 띄우는 것 까진 했습니다.

Thumb도 에로로님 말씀하신대로, 의존성을 줄이는 형태로 만들어 놓은 것 같습니다.

문제는 체크박스든 라디오버튼이든 상관없이 Thumb 컨트롤을 잡지 못하는 것 같습니다.

즉, 해당 UIElement를 클릭하면 IsCheck의 이벤트로 넘어가서 PropertyExplorer가 뜨지만, Mouse delta 값을 계산하기

위한 Thumb으로 안넘어오네요..ㅠㅠ

StackPanel로 바꿔 놓은 Rectangle같은 경우는 클릭시 PropertyExplorer에 띄고, 마우스 이동도 됩니다.

마우스 이동은 thumb 컨트롤을 이용했고, 클릭시 Interaction이 동작하게 DataTemplate > StackPanel에 삽입했습니다.

혹시 좋은 방법이 있으면 추천 부탁드립니다.

shwlee commented 2 years ago

DataTemplate 안에 StackPanel을 넣는 것과는 상관없어 보입니다. 제어 주체가 누구냐가 더 중요하죠.

ListBox 를 생각해볼까요? ListBox 는 selection에 관한 @lsirikh 님이 의도한 동작을 모두 할 수 있죠?(panning 을 제외하고) selection 동작을 생각해보세요. item 을 선택했을 때 선택된 item 스스로 자기가 선택되었다고 뭔가 하나요? (binding 처리를 한다든지 command 를 실행한다든지... 등등) 그냥 ListBox 의 SelectedItem 에서 처리될 거예요. item 스스로는 뭔가 하는 게 없어요.

이게 힌트가 되지 않을까 싶네요.