私はXamarin Forms Appを持っています。すべてのページに標準(サブ)ヘッダを入れたいと思います。サブヘッダには、ページごとに変更されるラベルとオプションの戻るボタンが含まれ、メニューのハンバーガーとアプリケーション名を含むAppヘッダーのすぐ下に表示されます。xamarin forms appサブヘッダ
最初に、標準コントロールのレイアウトとこのページから継承したすべてのページを含む「ヘッダーページ」を作成しました。
HeaderLabel = "Contact Us";
:HeaderPageから継承されたページがちょうどHeaderPageコンテンツ
private ContentView _headerPageContent;
public new View Content
{
set { _headerPageContent.Content = value; }
}
と子ページを設定する=コンテンツ設定することができますので、私はただのテキストを設定する必要がありましたContentPage.Contentを「隠し」これは、ContentPage.Contentをマスクする機能が削除されたForms 2.1までは素晴らしい結果でした。
その時、ヘッダーを持つControlTemplateでContentPageを使用することをお勧めしました。私の同僚と同じように、私はこの道を模索しました。そして、コードの複雑さと重複のために、すべてのページににバインディングを置いていたので、私たちはどちらも後退しました。
私は、見出しをビューにすること、またはそれをコントロールにするために何が必要かを検討しました。
今のところ、「Content」変数の名前を「HeaderPageContent」に変更したので、ヘッダーページから継承したすべてのページでContentではなくHeaderPageContentが設定されます。
誰か他にこれに類似したことはありますか?何を見つけましたか?