퇴근5분전


Plugin 프로그램을 만들다가 각 Item을 관리하려다 보니
리스트 박스로 표현이 안되서 새로 하나를 만들었다.


WPF라면 보여지는 데이타를 쉽게 바꿀수 있지만.

지금 계획이 2.0으로 우선 나만에 SDK를 만드는것이라... 2.0으로 우선 작업중이다.

Plugin 모듈은 완성이 되었고 테스트도 마쳤공...

각 plugin되는 Item을 관리해줘야 하니... 이걸 담아줄 그릇으로 이번에 제작했다.

그러나... 디자인 감각이 워낙 드러나기에... 쉐뜨..


일반 리스트 박스에 위아래 버튼만 넣은것처럼 보이겠지만..

실제로 각 아이템을 바꿀수 있는 부분이나 선택처리부분등등... 구현된것이다.

나중에 완성품 스샷 찍는 날까지... GoGo!


--> 3/13일 추가적인 스샷..


리스트 안에 TextBox, Label을 추가한모습을 볼수 있다.
오른쪽 버튼은 기본적으로 박아두었고 선택시 보이는 정도인데 추후에 뺄지 말지...  설계 과정에서 결정할 문제이다.
이로써 내부 아이템 구조를 바꾸는 것까지 구현은 되었는데 아이템을 바인딩 하기 위한 방법을 찾아야겠다
추가시 일일이 버튼 생성하고 데이타를 넣고 하는것보다는 Xaml처럼.. 뭔가 고정된 문서를 바탕으로
처리해보는게 좋을듯 싶은데... 아니면 중간에 특정 변환 객체를 두고 바인딩 시도를 하는 게 좋을듯 하다.

현재는 대리자를 통해 전달하면 리스트아이템에 넣어주게 되어 있다.

--> 추가... 변경사항

처음 생각했던걸 표현하는데 조금 미쓰가 나서리... 너무 컨트롤에 집중한 나머지.. 실제 들어오는 데이타에 대한 생각을 좀 못해서 약간에 변경사항이 생겼다.

ListBoxItem.Source 필드를 만들고 들어오는 데이타를 여기에 담고.
ListBoxItem.ContentControl ( 기존에 존재 )  서로 Bind_SourceToControl 대리자를 통해

외부에서 묶어주는 단계를 추가하였다. 그러니 산뜻한 컨트롤이 끝났다.

실제 플러그인 모듈에 붙여봤더니 잘된다... 아하하하하하하.... 즐겁도다..

--> 3월 15일...

리스트 박스 컨트롤이 말썽이 생겼었는데 퇴근후 집에와서 주석처리를 동반하면서 디버깅에 들어갔더니 원인을 찾았으나

왜 그런지는 모르겠다. 

    public partial class ListBox : UserControl, IUpdateListBox
    {
        /// <summary>
        ///  데이타 소스 원본
        /// </summary>        
       //protected IList<ListBoxItem> dataSource = new List<ListBoxItem>(); 
      // 추가되면 디자인모드상에서 에러가
...
        protected IList<ListBoxItem> dataSource = null;
        ...
    }

null을 주고 처리하면 된다..

넘겨받아서 처리 하기때메 굳이 생성할 필요는 없지만..  저 구문으로 사용하면
디자인 모드에서 사이즈 변경시 vs2008이 죽어버린다.

뭐 잡았으니.. 모두 원상태로... 개발은 계속...

 내부에 ToolBox를 넣은 스샷... 마지막 스샷일듯...  

이제 플러그인 메인 프로그래밍에 중점을 두고...