XamlParseException当XAML中添加事件处理程序(XamlParseExceptio

2019-11-01 14:23发布

我有麻烦添加事件处理在XAML的Windows 8手机的AutoCompleteBox它工作过,但因为我感动周围的东西没有了。 以下是我的MainPage.xaml中的摘录:

    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
        <Grid Margin="0,0,0,407">
            <Grid.RowDefinitions>
                <RowDefinition Height="50"/>
                <RowDefinition Height="70"/>
                <RowDefinition Height="50"/>
                <RowDefinition Height="70"/>
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="2*"/>
                <ColumnDefinition Width="3*"/>
            </Grid.ColumnDefinitions>

            <TextBlock Text="Start:" FontSize="35"/>
            <toolkit:AutoCompleteBox Grid.Row="1" x:Name="autoStadtStart" ItemsSource="{Binding Towns}" Text="Stadt" Tap="AutoCompleteBox_Click" LostFocus="AutoCB_Town_Reset"/>
            <toolkit:AutoCompleteBox Grid.Row="1" Grid.Column="1" x:Name="autoBusStopStart" ItemsSource="{Binding BusStops}" Margin="1,0,-1,0" Text="Haltestelle" Tap="AutoCompleteBox_Click" LostFocus="AutoCB_BusStop_Reset"/>

            <TextBlock Grid.Row="2" Text="Ziel:" FontSize="35"/>
            <toolkit:AutoCompleteBox Grid.Row="3" x:Name="autoStadtZiel" ItemsSource="{Binding Towns}" Text="Stadt" Tap="AutoCompleteBox_Click" LostFocus="AutoCB_Town_Reset"/>
            <toolkit:AutoCompleteBox Grid.Row="3" Grid.Column="1" x:Name="autoBusStopZiel" ItemsSource="{Binding BusStops}" Margin="1,0,-1,0" Text="Haltestelle" Tap="AutoCompleteBox_Click" LostFocus="AutoCB_BusStop_Reset"/>

        </Grid>
    </Grid>

......这是在MainPage.xaml.cs中相应的代码:

    private void AutoCompleteBox_Click(AutoCompleteBox sender, System.Windows.Input.GestureEventArgs e)
    {
        sender.Text = "";
    }

    private void AutoCB_BusStop_Reset(AutoCompleteBox sender, System.Windows.Input.GestureEventArgs e)
    {
        if (sender.Text.Equals(""))
            sender.Text = "Haltestelle";
    }

    private void AutoCB_Town_Reset(AutoCompleteBox sender, System.Windows.Input.GestureEventArgs e)
    {
        if (sender.Text.Equals(""))
            sender.Text = "Stadt";
    }

当我删除点击=“...”和LostFocus“......”从AutoCompleteBox控件,不引发异常。 有没有人有一个想法是怎么回事?

Answer 1:

你的方法的签名是错误的。 它应该是:

private void AutoCompleteBox_Click(object sender, System.Windows.Input.GestureEventArgs e) 

private void AutoCB_BusStop_Reset(object sender, System.Windows.RoutedEventArgs e)

private void AutoCB_Town_Reset(object sender, System.Windows.RoutedEventArgs e)


文章来源: XamlParseException when adding event handler in XAML