Goffo.WpfPageLayout 1.1.0

dotnet add package Goffo.WpfPageLayout --version 1.1.0
NuGet\Install-Package Goffo.WpfPageLayout -Version 1.1.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Goffo.WpfPageLayout" Version="1.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Goffo.WpfPageLayout --version 1.1.0
#r "nuget: Goffo.WpfPageLayout, 1.1.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Goffo.WpfPageLayout as a Cake Addin
#addin nuget:?package=Goffo.WpfPageLayout&version=1.1.0

// Install Goffo.WpfPageLayout as a Cake Tool
#tool nuget:?package=Goffo.WpfPageLayout&version=1.1.0

README

WPF Page Layout Custom Control

What is this repository for?

  • This is a WPF Custom Control that provides a basic Page Layout for Header, Body and Footer sections
  • NuGet Package: Goffo.WpfPageLayout
  • Learn Markdown

How do I get set up?

  • Custom Control XAML
    <Style TargetType="{x:Type local:PageLayout}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:PageLayout}">
                    <Border x:Name="PART_PageBorder"
                            BorderBrush="{TemplateBinding BorderBrush}"
                            BorderThickness="{TemplateBinding BorderThickness}"
                            Background="{TemplateBinding Background}"
                            CornerRadius="{TemplateBinding PageBorderCornerRadius}">
                    <Grid x:Name="PART_PageGrid" 
                          Margin="{TemplateBinding Margin}">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="{TemplateBinding HeaderHeight}"></RowDefinition>
                            <RowDefinition Height="{TemplateBinding BodyHeight}"></RowDefinition>
                            <RowDefinition Height="{TemplateBinding FooterHeight}"></RowDefinition>
                        </Grid.RowDefinitions>
                        <ContentPresenter Grid.Row="0" ContentSource="HeaderContent"></ContentPresenter>
                        <ContentPresenter Grid.Row="1" ContentSource="BodyContent"></ContentPresenter>
                        <ContentPresenter Grid.Row="2" ContentSource="FooterContent"></ContentPresenter>
                    </Grid>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
	
  • XAML - In App Example
    <pagelayout:PageLayout Margin="10"
                           BorderBrush="Black"
                           BorderThickness="1">
        <pagelayout:PageLayout.HeaderContent>
            
            <Border>
                <TextBlock FontSize="36" 
                        Foreground="Black" 
                        FontWeight="Bold" 
                        HorizontalAlignment="Center" 
                        VerticalAlignment="Center">HEADER TEXT
                </TextBlock>
            </Border>
        </pagelayout:PageLayout.HeaderContent>
        <pagelayout:PageLayout.BodyContent>
            <Border BorderBrush="Blue" 
                    BorderThickness="2" 
                    Margin="0 5 0 0">
            	<StackPanel>
                	<TextBlock 	HorizontalAlignment="Center" 
                           		Margin="10" 
                           		FontSize="32">BODY
                	</TextBlock>
                	<Button Width="200" 
                        	Margin="10">CLICK ME
                	</Button>
            	</StackPanel>
            </Border>
        </pagelayout:PageLayout.BodyContent>
        <pagelayout:PageLayout.FooterContent>
            
            <TextBlock HorizontalAlignment="Center" 
                       VerticalAlignment="Center" 
                       FontSize="16" 
                       Margin="5">My Page ©2023
            </TextBlock>
        </pagelayout:PageLayout.FooterContent>
    </pagelayout:PageLayout>

Contribution guidelines

  • Contact repo owner or admin

Who do I talk to?

  • Repo owner or admin
  • Other community or team contact
Product Compatible and additional computed target framework versions.
.NET net6.0-windows7.0 is compatible.  net7.0-windows was computed.  net7.0-windows7.0 is compatible.  net8.0-windows was computed.  net8.0-windows7.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0-windows7.0

    • No dependencies.
  • net7.0-windows7.0

    • No dependencies.
  • net8.0-windows7.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.1.0 113 1/24/2024
1.0.0 221 10/26/2023

Targets multiple .NET versions.