나는 VB에서 컨트롤 배열의 옛날 사용자이다. 이제 사라 졌으므로 교체를 찾고 있습니다.C#/Silverlight에서 사용자 정의 컨트롤의 배열/인덱싱 사용자 컨트롤을 만드는 방법은 무엇입니까?
Silverlight 용 C#으로 사용자 정의 컨트롤을 만들었습니다. 이 컨트롤은 bool 속성 IsChecked를 노출합니다. 자식 창에서
<ImageButton Name"imgbutton1" IsChecked="True"/>
<ImageButton Name"imgbutton2" IsChecked="False"/>
<ImageButton Name"imgbutton3" IsChecked="False"/>
, 나는 들어,의 IsChecked = true를 false로 설정됩니다이 그 어떤 다른 이러한 컨트롤의 시리즈를 채우고 난 하나를 클릭하면 즉 RadioButtons를 동등한,로 사용
foreach (ImageButton imgbutton in imgButtons) imgbutton.IsChecked = false;
imgbuttons[index].IsChecked = true;
: 내가 좋아하는 일을 할 것입니다 자신의 IsChecked하지만 (일부 '인덱스'변수가 가리키는) 내가해야 할 일을 모두 취소, 그리고
List<ImageButton> imgButtons= new List<ImageButton>();
imgButtons.Add(imgbutton1);
imgButtons.Add(imgbutton2);
imgButtons.Add(imgbutton3);
: 내가 좋아하는 일을 생각한다
내가 가지고있는 문제는 List<ImageButton>
가 컴파일되지 않는다는 것입니다. 나는 콜렉션에서 매우 색다른 데, 내가 무엇을 놓치고 있는지 알 수 없다. 표준 컨트롤에서 할 수는 있지만 사용자 컨트롤을 얻을 수는 없습니다.
감사합니다.
추신 : 저는 RadioButton 컨트롤을 사용자 정의하는 것을 고려해 보았지만 Blend를 사용하지 않았으며 다른 유형의 컨트롤에이 이미지 컨트롤을 사용하고 있습니다. 그러나이를 구현할 수있는 더 좋은 방법이 있다고 생각되면 알려 주시기 바랍니다.
편집 : 컴파일러는 형식 또는 네임 스페이스 이름 '하여 ImageButton이'을 (를) 찾을 수 없습니다 "라는 (당신은 using 지시문 또는 어셈블리 참조가?) '당신은 컴파일러 오류가 무엇인지 말해주지 않았다
감사합니다. 이것은 내가 놓친 것입니다. 같은 네임 스페이스 내에 모두 있기 때문에 내가 만든 컨트롤에 대한 참조를 추가해야한다는 것을 알지 못했습니다. 나는 그것을 Child Window에 추가 한 이후 코드 뒤에서 볼 수 있다고 가정했다. XAML에서 참조를 볼 수 있습니다. – PaulG