1

Windows Phone アプリケーションでの TabControl の使用に関する記事を読みました。初回ロード時は発火を回避できます。ただし、ユーザーがタブをクリックすると、selectionChanged が 2 回発生しました。誰かがそれを修正する方法を手伝ってくれませんか。前もって感謝します。

私のTabControlがあります:

<cc:TabControl Grid.Row="1" SelectionChanged="tabList_SelectionChanged" x:Name="tabList">
        <cc:TabItem Height="80" Header="Events" Foreground="Black"/>
        <cc:TabItem Height="80" Header="Details" Foreground="Black"/>
        <cc:TabItem Height="80" Header="Notes" Foreground="Black" />
    </cc:TabControl>

後ろにコーブがあります:

 public partial class Tab : PhoneApplicationPage
{
    private bool blnFristLoad=true;  
    public Tab()
    {
        InitializeComponent();
        tabList.SelectionChanged += new SelectionChangedEventHandler(tabList_SelectionChanged);
    }

private void tabList_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {

        if (blnFristLoad == false)
        {
            TabItem t = (sender as TabControl).SelectedItem as TabItem;
            t.Content = "202020";
                       }
        else blnFristLoad = false;                



    }
4

2 に答える 2

1

WindowsPhone では、TabControl の代わりに Pivot コントロールを使用してください。ピボット コントロールは電話のデザイン ガイドラインに従っており、見た目も操作感も大幅に向上しています。

于 2012-08-28T19:27:10.897 に答える
1

あなたのコードでは非常に明白です。SelectionChanged イベント ハンドラを 2 回追加しています。1 つは XAML コードからのもので、もう 1 つはコード ビハインドからのものです。+= 記号を使用しているため、イベントハンドラーは別のインスタンスとして追加されます。

それらのステートメントの 1 つを削除します。

于 2012-08-28T18:37:16.220 に答える