3
코드 숨김으로 그래픽 크기를 조정하기 위해 일부 그래픽을 슬라이더에 데이터 바인딩하려고합니다. 다양한 방법을 시도했지만 ScaleTransform의 ScaleX 속성을 C# 코드로 바인딩하는 방법을 찾을 수 없습니다. 당신이 ScaleTransform
과 Slider
의 이름을 줄 필요가 여기에 XAML이 아닌 C# 코드에서 ScaleTransform의 ScaleX에 SetBinding을 설정하는 방법은 무엇입니까?
Line lR = new Line();
lR.X1 = 0;
lR.Y1 = 0;
lR.X2 = 150;
lR.Y2 = 150;
lR.Stroke = new SolidColorBrush(Colors.Blue);
lR.StrokeThickness = 2;
ScaleTransform lRSt = new ScaleTransform();
lR.RenderTransform = lRSt;
Slider sliderR = new Slider();
sliderR.Minimum = 1;
sliderR.Maximum = 3;
sliderR.Value = 1;
sliderR.TickPlacement = TickPlacement.BottomRight;
sliderR.TickFrequency = 0.2;
sliderR.IsSnapToTickEnabled = true;
/* Set Binding between Slider and Canvas Children */
Binding sliderRBind1 = new Binding();
sliderRBind1.Source = sliderRBind1;
sliderRBind1.Path = new PropertyPath("Value");
BindingOperations.SetBinding(lRSt, ScaleTransform.ScaleXProperty, sliderRBind1);
감사의
.Source
를 사용합니다. 귀하의 답변에 따라 코드를 수정했지만 여전히 작동하지 않습니다. 내 질문을 편집하고 편집 된 코드를 내 질문에 게시했습니다. 문제가 어디 있는지 한번 들여다보십시오. – KMC@KMC :'sliderRBind1.Source = sliderRBind1;을'sliderRBind1.Source = sliderR; '로 대체하십시오. –
opps. 부주의했다. 그 점을 지적 해 주셔서 감사합니다. – KMC