문제

여기 뭔가에 대한 배를 놓치고 있어요, 얘들아.이게 계속 고개를 들고 있는데 무슨 일이 일어나고 있는지 모르겠으니 여기 있는 내 친구들이 도움을 줄 수 있기를 바랍니다.

Silverlight에서 작업할 때 C# 코드에서 바인딩을 만들면 응용 프로그램이 실행 중일 때 바인딩이 중단되지 않습니다.내 xaml의 선언적 바인딩은 괜찮아 보이지만 C#에서 바인딩을 만들 때 문제가 발생했습니다.나는 내가 놓친 눈이 멀 정도로 분명한 것이 있기를 바라고 있습니다.다음은 분쇄되는 일반적인 바인딩입니다.

TextBlock tb = new TextBlock();
Binding b = new Binding("FontSize");
b.Source = this;
tb.SetBinding(TextBlock.FontSizeProperty, b);
도움이 되었습니까?

해결책 2

적어도 Silverlight 3.1부터는 더 이상 문제가 되지 않는 것 같습니다.어쨌든 재현할 수는 없습니다.

다른 팁

방금 게시한 정확한 코드를 시도했는데 몇 가지 변경 사항을 제외하고는 제대로 작동했습니다.문제는 SetBinding 호출에 사용하는 요소가 바인딩하려는 텍스트 블록이 아니라는 것입니다.그것은해야한다:

TextBlock tb = new TextBlock();
Binding b = new Binding("FontSize");
b.Source = this;
tb.SetBinding(TextBlock.FontSizeProperty, b);

"this"에 double 유형의 FontSize 공용 속성도 있는지 확인하세요."this"가 사용자 컨트롤인 경우 상속된 멤버를 숨기지 않도록 속성 이름을 바꾸는 것이 좋습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top