TapGestureRecognizer больше не работает в xamarin.forms - PullRequest
1 голос
/ 06 ноября 2019

Раньше это работало для меня, но больше не работает. Может из-за обновлений? Но я просто пытаюсь прикрепить событие tap к моему лейблу JournalWarning. Я использовал TapGestureRecognizer.

До того, как TapGestureRecognizer вызывал метод OnReconnect в xaml, вот так

<StackLayout x:Name="Journal" IsVisible="false" VerticalOptions="FillAndExpand" Padding="20, 0, 20, 20" Spacing="10">
      <StackLayout Orientation="Horizontal">
            <Label x:Name="JournalTitle" FontSize="Micro" />
            <Label x:Name="AboutFormat" Text="About Formatted Text" FontSize="Micro" TextColor="{StaticResource InputBackgroundColor}" HorizontalTextAlignment="End" HorizontalOptions="EndAndExpand" />
       </StackLayout>
       <StackLayout>
          <local:DarkKeyboardEditor x:Name="JournalContent" Text="{Binding Source={x:Static local:JournalTracker.Current}, Path=Content}" TextChanged="OnJournalChanged" Focused="OnEdit" Unfocused="OffEdit" FontSize="Small" HeightRequest="{Binding Source={x:Static local:JournalTracker.Current}, Path=EntryHeight}" />
          <Label x:Name="JournalWarning" Text="Your device has lost its connection to the journal server. Journals cannot be viewed or edited at this time. Tap here to try and reconnect." FontSize="Medium" Style="{StaticResource warningLabelStyle}" IsVisible="{Binding Source={x:Static local:JournalTracker.Current}, Path=IsConnected, Converter={StaticResource inverser}}" VerticalOptions="EndAndExpand" AutomationProperties.IsInAccessibleTree="true">
              <Label.GestureRecognizers>
                <TapGestureRecognizer 
                   Tapped="OnReconnect" />
              </Label.GestureRecognizers>
         </Label>
       <BoxView x:Name="spacer" Style="{StaticResource SpacerStyle}" />
       </StackLayout>
</StackLayout>

Это перестало работать, поэтому я подумал, что, возможно, мои отступы мешают и начали убирать отступы и поля, ноэто не имело никакого значения до сих пор. Я также попытался сделать TapGestureRecognizer в C # как ...

var tapGestureRecognizer = new TapGestureRecognizer();
            tapGestureRecognizer.Tapped += (s, e) => {
                OnReconnect();
            };
            JournalWarning.GestureRecognizers.Add(tapGestureRecognizer);

Мысль о создании команды вместо этого, чтобы увидеть, будет ли это иметь значение. Я, наверное, попробую следующий idk, это похоже на очень нубский вопрос, и я не уверен, почему его вообще не бьют.

Можете ли вы увидеть что-нибудь, что может быть проблемой? Или что-то изменилось в обновлении, которое я пропустил? Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...