0

Windows Phone 8.1 Silverlight アプリにアプリケーション バーがあります。それには1つが含まれておりApplicationBarButton、ユーザーが特定のポイントまでスクロールすると、LongListSelector別のボタンが次のApplicationBarように追加されます。

for (int i = 0; i < 1; i++)
{
     ApplicationBarIconButton scrollToToday = new ApplicationBarIconButton();
     scrollToToday.Text = "idag";
     scrollToToday.IconUri = new Uri("/Assets/AppBar/today_dark.png", UriKind.Relative);
     parent.ApplicationBar.Buttons.Add(scrollToToday);
}

ユーザーがスクロールして元の開始点に戻ると、次のように削除します。

parent.ApplicationBar.Buttons.RemoveAt(1);

ただし、アプリは元の開始点で起動し、削除する 2 番目のボタンがないため、アプリの起動時にそのコード行に達するとアプリがクラッシュします。に複数のボタンが含まれている場合は、インデックス 1 のボタンを削除しても問題ないことを最初に確認する必要があることに関係していると思いApplicationBarます。しかし、どうすればよいでしょうか。

4

2 に答える 2

0

最初にボタンの数を確認してください。そのためには Linq が必要です。

 using System.Linq;

 ...

 if(parent.ApplicationBar.Buttons.Count() > 1)
      parent.ApplicationBar.Buttons.RemoveAt(1);
于 2015-04-24T09:27:40.610 に答える