estoy trabajando en un gran proyecto de WPF y durante depurar mi ventana de salida está llena de estas molestas advertencias:¿Cómo deshacerse de la molesta advertencia de enlace HorizontalContentAlignment?
System.Windows.Data Información: 10: No se puede recuperar el valor utilizando vinculante y carece de valor válido> repliegue existe; usando el valor predeterminado en su lugar. BindingExpression: Path = HorizontalContentAlignment; DataItem = null; elemento de destino es 'ComboBoxItem' (Name = ''); apuntar propiedad es 'HorizontalContentAlignment' (tipo> ' HorizontalAlignment')
En el ejemplo específico ComboBoxItem es de estilo en esta forma:
<Style x:Key="{x:Type ComboBoxItem}" TargetType="{x:Type ComboBoxItem}">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="SnapsToDevicePixels" Value="True"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ComboBoxItem}">
<Border
Name="bd"
Padding="4,4,4,4"
SnapsToDevicePixels="True"
CornerRadius="2,2,2,2">
<ContentPresenter />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsHighlighted" Value="true">
<Setter TargetName="bd" Property="Background" Value="{StaticResource MediumBrush}"/>
<Setter TargetName="bd" Property="Padding" Value="4,4,4,4"/>
<Setter TargetName="bd" Property="CornerRadius" Value="2,2,2,2"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Yo sé que el problema se genera por la definición de tema por defecto para ComboBoxItem que contiene cosas como:
<Setter Property="Control.HorizontalContentAlignment">
<Setter.Value>
<Binding Path="HorizontalContentAlignment" RelativeSource="{RelativeSource Mode=FindAncestor, AncestorType=ItemsControl, AncestorLevel=1}" />
</Setter.Value>
</Setter>
pero también pensó que el uso
<Setter Property="OverridesDefaultStyle" Value="True"/>
se encargaron del problema, y en su lugar, las advertencias siguen allí.
EDIT: Con el fin de reproducir el problema se debe redefinir también el estilo de ComboBox exactamente igual que hace en este ejemplo de MSDN: ComboBox ControlTemplate Example
Cualquier ayuda es muy apreciada
No puedo reproducir su problema con este XAML ni en 4.0 ni en 3.5. Funciona bien sin ninguna advertencia vinculante. – majocha
tiene razón, probé solo y no me avisa, edito la pregunta para más detalles – Drake
No puedo ver esa encuadernación problemática en el ejemplo que ha vinculado en la edición. – majocha