XAML - 如何在另一个视图中获取一个元素的名称

时间:2009-12-16 08:38:02

标签: wpf xaml

我有一个调用2usercontrols的组件。 Usercontrols1 :(代码部分)

<StackPanel Name="NeedThisName" >

</StackPanel>

Usercontrols2 :(代码部分)

<Button >
     <Button.Template>
          <ControlTemplate>
               <Rectangle >
                     <Rectangle.Fill>
                        <VisualBrush Visual="{Binding ElementName=????}" Opacity="0.75" Stretch="None" >
                      <VisualBrush.RelativeTransform>
                              <TransformGroup>
                              <ScaleTransform ScaleX="0.5" ScaleY="0.5"                     />
                         </TransformGroup>
                      </VisualBrush.RelativeTransform>
                   </VisualBrush>
                </Rectangle.Fill>
            </Rectangle>
       </ControlTemplate>
 </Button.Template>

我想在usercontrol1(“NeedThisName”)中获取名称以指定visualbrush的Visual属性。

1 个答案:

答案 0 :(得分:0)

您不应该从另一个用户控件访问控件。

尝试仅使用(依赖项)属性和/或数据绑定到ViewModel类来区分它们。例如,您的用户控件可能具有一个属性“RectangleFill”,矩形的填充绑定到该属性。