2012-08-09 2 views
1

나는 이퀄라이저와 같은 컨트롤에 대한 내 머리 속에이 아이디어를 가지고 있지만 다양한 엄지 손가락을 여러 번 선택하여 한 번에 이동할 수 있기를 바랍니다. 나는 목록 상자를 사용하고 그것이 가지고있는 선택 속성을 사용하는 것을 생각했지만, 나는 그것을 슬라이더에 전달하고 그들을 조화롭게 움직일 수있는 방법을 찾지 못했습니다. 누구든지 좋은 아이디어가 있거나 전에 한 일을 본 적이 있습니까?여러 슬라이더 선택 및 조작

답변

2

아마도 사용자가 상호 작용할 수있는 몇 가지 컨트롤이 있습니다. 하나의 아이디어는 "선택됨"상태를 표시하기 위해 해당 컨트롤 주위에 꾸미기를 만드는 것입니다. 각 컨트롤에 대한 마우스 클릭을 듣고 Ctrl 수정 자 (Ctrl 및/또는 Shift, 둘 다 일반적으로 다중 선택에 사용됨)를 테스트합니다. 별도의 컬렉션 (배열)에 저장할 각각의 선택된 상태를 토글합니다.

이러한 컨트롤 중 하나에서 움직임을 감지하면 선택되어 있는지 확인하십시오. 맞다면 다른 모든 것을 옮기십시오.

+0

나는이 아이디어를 좋아하지만 내가 슬라이더 클래스는 앞까지 해당 기능을 많이 제공합니다 간단하기 때문에이 길을 갈 것입니다 있는지 확실하지 않습니다. 어쩌면 당신의 아이디어를 생각해 낼 수 있고 슬라이더 클래스에 추가하여 설명했던 것과 같은 해결책을 찾을 수있을 것입니다. – steveg89

1

아마도 MultiExtended 선택 모드에서 목록 상자의 SelectedItems 속성을 사용할 수 있습니다.

당신은 당신이 슬라이더의 valueChanged 이벤트를 확인하고 이벤트 핸들러에서이 차이를 얻을 컬렉션의 모든 슬라이더의 가치를 증가 ObservableCollection에

에 바인딩.

이제 슬라이더의 엄지 손가락을 선택하여 끌면 다른 선택된 슬라이더에 영향을 미칩니다.

(사소한 질문 : 당신은 MVVM을 사용하고 있습니까?)

+0

이것은 처음 사용했을 때 생각한 경로였습니다. 아직 MVVM에 대해 충분히 배웠기 때문에 단순히 MVVM을 사용하지는 않습니다 ... (내 WPF 책은 그것에 대해 이야기하지 않습니다.)하지만 느슨하게 개념을 사용합니다. 바인딩, UI 분리 및 그 배후의 논리 등은 지금까지 모든 설계의 주요 부분입니다. 이 아이디어가 마음에 들지만 각 디자인을 시도 할 때까지 포인트를주는 것을 기다릴 것입니다. – steveg89

+0

내 생각을 잊어 버리고 대신 Tergiver 's를 사용해보십시오. 내 솔루션은 슬라이더를 직접 선택하는 것을 의미하지만 슬라이더의 값에 영향을주지 않고 슬라이더를 선택할 수는 없으며 슬라이더는 마우스를 캡처하여 다중 선택을 할 수 없습니다. Tergiver님께 서 ardoner 님의 상태를 확인해 주시면 – Julien