본문 바로가기

전체 글

(270)
[TIP] 불필요한 Using 문 정리 VS2008에서 오른쪽 마우스 클릭 > Using 구성 > 제거 및 정렬 간단하죠? ^^ 크리에이티브 커먼즈 라이선스 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 3.0 Unported 라이센스에 따라 이용하실 수 있습니다.
[삽질방지] ButtonBase의 Space바 클릭 오늘도 또 실버라이트의 치부를 공개하게 되는군요. 어제 저는 원하지도 않는 기능을 실버라이트가 지원하고 있다는 사실을 알게 되었습니다. 바로 SpaceBar Click 입니다. 이것은 ButtonBase를 상속한 모든 객체가 적용됩니다. 실제로 Button에 Focus가 가있는 상태에서만 작동을 해서 문제가 되지 않을 수 있지만 다음에 경우 크게 문제가 됩니다. Button 클릭으로 어떤 새로운 객체를 띄워야 하는 경우.. 이 경우 만약 버튼이 새로운 객체에 의해 가려진다면 실제 의도상으로는 새로운 객체는 한개만 띄워져야 하지만 SpaceBar를 사용하면 여러번 띄워지는 경우가 생기죠. 이 경우는 개발자가 부주의 한 탓에 생긴 버그라고 할 수 있죠.. 이런 경우 클릭 이후 Focus를 새로 띄운 객체에게..
[삽질방지] Firefox에서 실버라이트 런타임 또 깔으라고 나오는 경우 중 하나! 조금 황당한 경우입니다. 이런 문제를 마주치시더라도 당황하지 마세요. 아시는 바와 같이 Visual Studio에서 실버라이트 프로젝트를 생성하면 *.aspx 와 *.html 견본페이지가 생성됩니다. 특히 *.html 페이지에 보면 object를 사용하여 실버라이트를 호스팅하는 부분이 있습니다. 보통 아래와 같습니다. 첫줄에 제가 빨간 색으로 표시한 부분이보이시나요? object태그의 data 속성이 data:application/x-silverlight,입니다. 끝에 ,(comma)가 있습니다. 이거 함부로 없애시면 안됩니다. ^^;;; IE에서는 문제 없습니다. 하지만 Firefox(Firefox 2 and 3)에서는 저 comma 함부로 떼면, 실버라이트 런타임을 또 깔으라고 하네요. 이.상.하.죠..
[삽질방지] 값이 예상 범위를 벗어났습니다. '값이 예상 범위를 벗어났습니다.' 이 error 또는 다음 과 같은 에러. 이 에러는 이미 부모를 가지고 있는 객체가 또다시 Children Add 가 되었을 때 일어납니다. 예외적으로 ItemsControl의 경우 Item으로 셋팅된 UI 객체가 다시 한번 Item으로 셋팅되거나 Children.Add 되는 경우에 발생할 수 있습니다. 이것은 버그성으로 보이나 ItemsControl(ex. ListBox) 에서 Items로 셋팅된 UI객체는 부모가 다시재설정 될 수 없습니다. 위에 에러가 발생합니다. 주의하세요. 쉽게 말해 다음과 같은 코드는 작성하지 말라는 이야기입니다. Rectangle rc = new Rectangle(); MyListBox.Items.Add(rc); MyListBox.Items..
[삽질방지] ExternalCallersFromCrossDomain 문제 해결하기 ======================================================================================== 우선 현재 문제는 뭐냐하면 말이죠. A.com 에 xap 파일이 있고 B.com 에 html 페이지가 있는데요. B.com 에서 A.com 의 xap 파일을 호출하는데 이 xap 파일은 다시 A.com 과 통신을 하도록 되어 있어요. (WebClient나 HttpWebRequest 로, 소켓은 확인 못해봤음. 아마 같을 것으로 추정됨) 근데 문제는 이 xap 파일이 A.com 과 통신을 할때 크로스도메인 이슈가 발생하는데.. 서버측에 clientaccesspolicy 나 crossdomain 이 설정되어 있어도 통신을 제대로 못하는 문제인건데요....
Cross Domain 허용방법 실버라이트는 크로스 도메인 접근에 두 가지 매커니즘을 지원합니다. clientaccesspolicy.xml ; 크로스 도메인 접근cross-domain-access하기 위한 서비스를 설정하기 위해 도메인의 루트에 놓는 파일. crossdomain.xml ; 서비스가 호스트된 도메인의 루트에 놓는 파일. 파일은 반드시 공개할 도메인을 기록해야 합니다. 플래시에서 사용했던 방식으로 실버라이트도 이 스키마의 서브셋을 지원합니다. clientaccesspolicy.xml 파일을 사용하여 크로스 도메인 접근하기 1. 실버라이트 클라이언트가 접근 가능한 서비스를 만듭니다. 자세한 정보는 실버라이트 클라이언트를 위한 서비스 만들기를 보세요. 2. 서비스에 접근을 허용하기 위해 clientaccesspolicy.xml..
[삽질방지] Grid를 사용할 때 약간의 버그 약간 버그성이 짙은데.. grid 컨트롤을 이용할 때.. grid column이나 row가 Auto로 되어 있는 경우. 값이 0으로 갔다가 다시 다른 양수값으로 복귀를 안하는 경우가 종종 발생합니다. Beta1에서는 괜찮았는데..^^;; 저는 Scrollbar를 스타일로 만들었는데 자꾸 Thumb이 사라지더군요.. 그래서 RowDefinition 에 MinHeight 값을 0.1 로 설정해두었더니 잘 작동하네요..^^;; [출처] 실버라이트 네이버 카페
[TIP] VS에 snippet을 등록하여 사용하자 snippet은 자주사용 코드를 등록해 놓고 간편하게 사용할 수 있는 도구입니다. snippet의 XML형식은 아래와 같습니다. 더 자세한 스키마는 MSDN을 참조해주세요. Expansion snippet 제목 hello snippet에 대한 설명을 넣습니다. 작성자를 넣습니다. 위와 같은 파일을 만든 후 VS2008에서 도구 -> 코드조각관리자 -> 가져오기 로 등록하면 되고 XML에 등록된 SnippetType에 따라 코드조각 삽입[(Ctrl+K) + (Ctrl+X)], 코드조각 감싸기[(Ctrl+K) + (Ctrl+S)] 로 사용하시면 됩니다. 또 다른 방법은 XML의 Shortcut 등록된 단어를 입력 후(이때도 intelligence 됨) 단어의 끝에서 Tab키를 누르시면 됩니다. 아주 유용한 ..
[Sample] Silverlight => JavaScript 호출 먼저 자바스크립트에서 다음과 같이 선언하도록 하죠. function fromSilverlight(str) { alert("From silverlight : " + str); } 실버라이트에선 다음과 같이 불러주도록 하면 됩니다. HtmlPage.Window.Invoke("fromSilverlight", "하하하.. 실버라이트입니다"); Alert이나 confirm 같은 함수는 HtmlPage.Window에서 기본 지원하며 System.Windows.Browser.HtmlPage.Window.CreateInstance("자바스크립트함수명", new string[] {"파라미터값1","파라미터값2"}); 이런식으로도 사용 가능 [출처] 실버라이트 네이버 카페
[Sample] Silverlight에서 파라미터를 받아 초기화를 하자 이번 강좌는 객체에서 파라미터를 받아서 초기화를 하는 방법에 대해서 알아 보도록 하겠습니다. 모두들 플래시를 많이 사용해 보셨을 것입니다. object 태그의 param 속성에 FlashVars를 이용하여 파라미터를 넘겨서 플래시 내부에서 넘어온 데이터를 사용합니다. 기존 1.0이나 1.1에서 사용이 가능한지는 모르겠지만 (전에 찾아보다 실패했음) 2 Beta1에서는 당당히 지원을 하고 있습니다. 그럼 이제부터 사용방법과 예제를 통하여 배우도록 하겠습니다. 1. 실버라이트를 부르는 페이지에서 파라미터 설정 우리가 실버라이트를 부를때 사용할 수 있는 방법은 2가지가 있습니다(Silverlilght 2 기준). ASP.NET의 Silverlight 컨트롤과 Html의 object 태그입니다. ASP.NET의..