2011-03-28 6 views
2

테두리의 왼쪽과 너비를 설정해야합니다. 나는 여백을WPF 테두리 왼쪽과 너비 설정

b.Margin = new Thickness(pb.X, b.Margin.Top, b.Margin.Right, b.Margin.Bottom); 

를 사용하려고 해요하지만 난 너비 속성을 설정하면 테두리 ... 잘못된 이상한 위치에 (내가 원하는 왼쪽의 절반 화면 + 반) 배치됩니다.

어떻게해야할까요?

감사

+0

경우이 논리는? MeasureOverride (Size constraint) 메쏘드 안에 있다면 @ Snowbear의 답이 도움이 될 것입니다. ArrangeOverride() 내부에서도 비슷한 작업을 수행해야합니다. 그렇지 않으면 좀 더 자세히 설명해 주시겠습니까? –

+0

"왼쪽 및 너비"또는 "길이 및 너비"를 설정하려고합니까? – Robaticus

답변

1
var totalAvailableWidth = ...; // you will have to get it somewhere 
var marginRight = totalAvailableWidth - pb.X - width; 
b.Margin = new Thickness(pb.X, b.Margin.Top, marginRight, b.Margin.Bottom); 
+0

여백의 초기 값은 0 ... –

+0

감사합니다. 나머지는 필요합니다 ... totalAvailableWidth = ((FrameworkElement) b.Parent) .ActualWidth; –