Estoy tratando de crear un efecto de reflexión y está funcionando bien, excepto que tengo que codificar algunos valores. Este es mi XAML:XAML, propiedades de Ancho y Altura de enlace a las mismas propiedades de otro control
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="60"/>
<RowDefinition />
<RowDefinition Height="80"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="1" VerticalAlignment="Center">
<UserControl x:Name="CurrentPresenter" />
<Border Width="500" Height="200" >
<Border.Background>
<VisualBrush Visual="{Binding ElementName=CurrentPresenter}" >
<VisualBrush.Transform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="-1" CenterX="500" CenterY="99" />
</TransformGroup>
</VisualBrush.Transform>
</VisualBrush>
</Border.Background>
<Border.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,0.6">
<GradientStop Offset="-0.6" Color="Black"></GradientStop>
<GradientStop Offset="0.6" Color="Transparent"></GradientStop>
</LinearGradientBrush>
</Border.OpacityMask>
</Border>
</StackPanel>
</Grid>
He tratado de sustituir de Frontera Width="500"
y Height="200"
por Width="{Binding ElementName=CurrentPresenter, Path=Width}"
y Height="{Binding ElementName=CurrentPresenter, Path=Height}"
pero no parece funcionar.
¿Qué problema tiene este código?
ACTUALIZACIÓN: Si fijo Ancho y Altura aquí:
<UserControl x:Name="CurrentPresenter" Height="200" Width="500" />
funciona como se esperaba. Sin embargo, no funciona si configuro esos valores en UserControl XAML. ¿Algunas ideas?
Cuando dice que no funciona, ¿qué tipo de comportamiento ve realmente? ¿El borde parece demasiado pequeño, o simplemente sigue estirándose infinitamente (he visto ambos)? – TabbyCool
Se estira para llenar el recipiente. – JAG
Si establece el alto y el ancho en UserControl XAML, ¿el UserControl parece tener el tamaño correcto y es solo el borde el que se extiende, o ambos controles son del tamaño incorrecto? – TabbyCool