Pregunta

Tengo un UserControl, predeterminado generado por VS, solo se agrega TextBlock:

<UserControl x:Class="MyNameSpace.Presentation.MyControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Name="myControl">
    <Grid>
        <TextBlock x:Name="SomeTextBox" Text="SomeText"></TextBlock>
    </Grid>

Ahora, pongo varias instancias de este control en el WrapPanel del control padre dinámicamente desde el código detrás. Quiero manejar todos los clics del botón izquierdo del mouse desde las instancias de MyControl. Tengo el siguiente código:

<UserControl x:Class="Minimo.Presentation.FirstParent"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Presentation="clr-namespace:Minimo.Presentation"
Height="300" Width="300">
<WrapPanel Name="wrapPanelOfMyControls" MyControl.MouseLeftButtonDown="WrapPanel1_OnMouseLeftButtonDown">
</WrapPanel>

En el controlador de eventos realizo alguna acción, y funciona. Sin embargo, aparece el siguiente error al editar el archivo XAML: La propiedad adjunta 'MouseLeftButtonDown' no se encontró en el tipo 'MyControl'. ¿Cómo arreglar esto?

¿Fue útil?

Solución

Esto es solo un error con el compilador / diseñador XAML y puede ignorarse con seguridad. Sin embargo, es posible que pueda "arreglar" especificando un tipo que conoce más íntimamente:

UIElement.MouseLeftButtonDown="WrapPanel1_OnMouseLeftButtonDown"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top